update
All checks were successful
Setup Docker Action / setup_docker (3.12.7) (push) Has been skipped
All checks were successful
Setup Docker Action / setup_docker (3.12.7) (push) Has been skipped
This commit is contained in:
parent
530900a6be
commit
544997a004
@ -34,9 +34,14 @@ jobs:
|
||||
with:
|
||||
postgresql version: '16'
|
||||
|
||||
- name : Test postgres
|
||||
run: psql postgresql://postgres:postgres@localhost:5432/postgres -c "SELECT 1"
|
||||
|
||||
- name: Make envfile
|
||||
uses: SpicyPizza/create-envfile@v2.0
|
||||
with:
|
||||
PG_USER: ${{ secrets.PG_USER }}
|
||||
PG_PASSWORD: ${{ secrets.PG_PASSWORD }}
|
||||
DB_SERVER: ${{ vars.DB_SERVER }}
|
||||
DB_PORT: ${{ vars.DB_PORT }}
|
||||
|
||||
- name: Generate Config
|
||||
run: make gen_config
|
||||
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -49,4 +49,5 @@ package.json
|
||||
/man/
|
||||
/share/
|
||||
/src/
|
||||
/deployment/postgresql/*
|
||||
/deployment/postgresql/*
|
||||
venv/*
|
||||
|
1
Makefile
1
Makefile
@ -1,3 +1,4 @@
|
||||
include .env
|
||||
.SHELLFLAGS += ${SHELLFLAGS} -e
|
||||
PWD = $(shell pwd)
|
||||
UID = $(shell id -u)
|
||||
|
@ -192,24 +192,30 @@ Generate_Config_Docker(){
|
||||
Show 0 " Generate Config Complete"
|
||||
}
|
||||
Generate_Config_Native(){
|
||||
# Load environment variables from .env file
|
||||
if [ -f .env ]; then
|
||||
export $(grep -v '^#' .env | xargs)
|
||||
else
|
||||
Show 1 ".env file not found!"
|
||||
exit 1
|
||||
fi
|
||||
ADDONS=${1:-}
|
||||
REPO_NAME=$(basename "$(git rev-parse --show-toplevel)" | sed -E 's/[.-]/_/g')
|
||||
USER="${REPO_NAME:-"default_repo"}"
|
||||
DB_PORT=$(sudo -u postgres psql -t -c "SHOW port;" | awk '{print $1}' || echo 5432)
|
||||
PASSWORD="$(openssl rand -hex 24)"
|
||||
# Check if the user already exists
|
||||
USER_EXISTS=$(sudo -u postgres psql -t -c "SELECT 1 FROM pg_roles WHERE rolname='$USER';")
|
||||
USER_EXISTS=$(psql "postgresql://${PG_USER}:${PG_PASSWORD}@${DB_SERVER}:${DB_PORT}/postgres" -c "SELECT 1 FROM pg_roles WHERE rolname='$USER';")
|
||||
|
||||
if [ -z "$USER_EXISTS" ]; then
|
||||
# User does not exist, create the user
|
||||
Show 2 "Create the new PostgreSQL username: $USER with password: $PASSWORD"
|
||||
sudo -u postgres psql -c "CREATE USER $USER WITH PASSWORD '$PASSWORD';"
|
||||
psql "postgresql://${PG_USER}:${PG_PASSWORD}@${DB_SERVER}:${DB_PORT}/postgres" -c "CREATE USER $USER WITH PASSWORD '$PASSWORD';"
|
||||
Show 2 " Grant $USER superuser (admin) privileges"
|
||||
sudo -u postgres psql -c "ALTER USER $USER WITH SUPERUSER;"
|
||||
psql "postgresql://${PG_USER}:${PG_PASSWORD}@${DB_SERVER}:${DB_PORT}/postgres" -c "ALTER USER $USER WITH SUPERUSER;"
|
||||
else
|
||||
# User exists, update the password
|
||||
Show 2 "User $USER already exists, updating password to $PASSWORD"
|
||||
sudo -u postgres psql -c "ALTER USER $USER WITH PASSWORD '$PASSWORD';"
|
||||
psql "postgresql://${PG_USER}:${PG_PASSWORD}@${DB_SERVER}:${DB_PORT}/postgres" -c "ALTER USER $USER WITH PASSWORD '$PASSWORD';"
|
||||
fi
|
||||
${PYTHON} "$SETUP_PATH/gen_config.py" --db_user $USER --db_pass $PASSWORD --deploy_path "$(pwd)" \
|
||||
--addons_path $ADDONS --db_port $DB_PORT
|
||||
|
Loading…
Reference in New Issue
Block a user