#!/bin/bash set -e # Check if database exists if ! psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" -tAc "SELECT 1 FROM pg_database WHERE datname = '$TARGET_DB_NAME'" | grep -q 1; then # Create the target database if it doesn't exist createdb -U "$POSTGRES_USER" -O "$POSTGRES_USER" "$TARGET_DB_NAME" fi # 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)"