mirror of
https://github.com/MatthewL246/pretendo-docker.git
synced 2026-03-21 17:34:37 -05:00
Switch to running the Postgres init script manually during setup
This should hopefully fix the issue where some people run the setup script but no Postgres databases get created.
This commit is contained in:
parent
4ea079b94a
commit
6290a7f269
|
|
@ -214,10 +214,6 @@ services:
|
|||
- type: volume
|
||||
source: postgres-database
|
||||
target: /var/lib/postgresql/data
|
||||
- type: bind
|
||||
source: ./scripts/run-in-container/postgres-init.sh
|
||||
target: /docker-entrypoint-initdb.d/postgres-init.sh
|
||||
read_only: true
|
||||
networks:
|
||||
internal:
|
||||
dns: 172.20.0.200
|
||||
|
|
|
|||
18
scripts/internal/firstrun-postgres-container.sh
Executable file
18
scripts/internal/firstrun-postgres-container.sh
Executable file
|
|
@ -0,0 +1,18 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# shellcheck source=./framework.sh
|
||||
source "$(dirname "$(realpath "$0")")/framework.sh"
|
||||
parse_arguments "$@"
|
||||
|
||||
print_info "Setting up the Postgres container..."
|
||||
|
||||
load_dotenv postgres.env postgres.local.env
|
||||
postgres_init_script=$(cat "$git_base_dir/scripts/run-in-container/postgres-init.sh")
|
||||
|
||||
compose_no_progress up -d postgres
|
||||
run_command_until_success "Waiting for Postgres to be ready..." 5 \
|
||||
docker compose exec postgres psql -U "$POSTGRES_USER" -c "\\l"
|
||||
|
||||
run_verbose docker compose exec postgres sh -c "$postgres_init_script"
|
||||
|
||||
print_success "Postgres container is set up."
|
||||
|
|
@ -9,7 +9,7 @@ print_info "Running migrations..."
|
|||
load_dotenv postgres.env postgres.local.env
|
||||
|
||||
compose_no_progress up -d postgres
|
||||
if [[ $(docker compose exec postgres psql -U "$POSTGRES_USER" -d friends -c "SELECT schema_name FROM information_schema.schemata WHERE schema_name = '3ds';") == *"(1 row)" ]]; then
|
||||
if [[ $(docker compose exec postgres psql -At -U "$POSTGRES_USER" -d friends -c "SELECT 1 FROM information_schema.schemata WHERE schema_name = '3ds';") = "1" ]]; then
|
||||
print_info "Migrating friends to the nex-go rewrite..."
|
||||
migration=$(cat "$git_base_dir/scripts/run-in-container/friends-nex-go-rewrite-migration.sql")
|
||||
# shellcheck disable=SC2046
|
||||
|
|
|
|||
|
|
@ -5,6 +5,8 @@ set -eu
|
|||
databases="friends super_mario_maker"
|
||||
|
||||
for database in $databases; do
|
||||
echo "Creating database: $database"
|
||||
psql -v ON_ERROR_STOP=1 -U "$POSTGRES_USER" -c "CREATE DATABASE $database;"
|
||||
if [ "$(psql -At -U "$POSTGRES_USER" -c "SELECT 1 FROM pg_database WHERE datname='$database'")" = '' ]; then
|
||||
echo "Creating database: $database"
|
||||
psql -v ON_ERROR_STOP=1 -U "$POSTGRES_USER" -c "CREATE DATABASE $database;"
|
||||
fi
|
||||
done
|
||||
|
|
|
|||
1
setup.sh
1
setup.sh
|
|
@ -57,6 +57,7 @@ setup_environment_variables() {
|
|||
setup_containers() {
|
||||
./scripts/internal/firstrun-mongodb-container.sh
|
||||
./scripts/internal/firstrun-minio-container.sh
|
||||
./scripts/internal/firstrun-postgres-container.sh
|
||||
./scripts/internal/update-account-servers-database.sh
|
||||
./scripts/internal/update-miiverse-endpoints.sh
|
||||
./scripts/internal/update-postgres-password.sh
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user