26 lines
868 B
Bash
26 lines
868 B
Bash
#!/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)"
|