From 2c9485b25dd7227720dfddcb2486eba206369cda Mon Sep 17 00:00:00 2001 From: Bram Date: Wed, 21 May 2025 21:08:33 +0200 Subject: [PATCH] init --- Dockers/postgres-shadow/init.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Dockers/postgres-shadow/init.sh diff --git a/Dockers/postgres-shadow/init.sh b/Dockers/postgres-shadow/init.sh new file mode 100644 index 0000000..aa340e2 --- /dev/null +++ b/Dockers/postgres-shadow/init.sh @@ -0,0 +1,31 @@ +#!/bin/bash +set -e + +# Create the target database if it doesn't exist +psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL + DO + \$do\$ + BEGIN + IF NOT EXISTS (SELECT FROM pg_database WHERE datname = '$TARGET_DB_NAME') THEN + CREATE DATABASE $TARGET_DB_NAME OWNER $POSTGRES_USER; + END IF; + END + \$do\$; +EOSQL + +# Enable the pgvector extension on both databases +for DB in "$POSTGRES_DB" "$TARGET_DB_NAME"; do + psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$DB" <<-EOSQL + CREATE EXTENSION IF NOT EXISTS vector; +EOSQL +done + +# Run the initial refresh if SOURCE_DB_URL is provided +if [ ! -z "$SOURCE_DB_URL" ]; then + echo "Running initial database refresh..." + /usr/local/bin/refresh.sh +else + echo "No SOURCE_DB_URL provided, skipping initial refresh" +fi + +echo "Database initialization completed at $(date)" \ No newline at end of file