diff --git a/.github/workflows/build_deploy_master.yml b/.github/workflows/build_deploy_master.yml index 1493bba..aba2bf9 100644 --- a/.github/workflows/build_deploy_master.yml +++ b/.github/workflows/build_deploy_master.yml @@ -98,6 +98,10 @@ jobs: CHATMAP_S3_BUCKET_NAME: ${{ vars.CHATMAP_S3_BUCKET_NAME }} CHATMAP_S3_ACCESS_KEY: ${{ vars.CHATMAP_S3_ACCESS_KEY }} CHATMAP_S3_SECRET_KEY: ${{ vars.CHATMAP_S3_SECRET_KEY }} + POSTGRES_DB: ${{ vars.PROD_POSTGRES_DB }} + POSTGRES_USER: ${{ vars.PROD_POSTGRES_USER }} + POSTGRES_PASSWORD: ${{ secrets.PROD_POSTGRES_PASSWORD }} + COOKIE_SECRET: ${{ secrets.PROD_COOKIE_SECRET }} run: | ssh $EC2_USER@$EC2_HOST << ENDSSH set -e @@ -118,6 +122,10 @@ jobs: export CHATMAP_S3_ACCESS_KEY=$CHATMAP_S3_ACCESS_KEY export CHATMAP_S3_SECRET_KEY=$CHATMAP_S3_SECRET_KEY export CHATMAP_ENC_KEY=$CHATMAP_ENC_KEY + export POSTGRES_DB=$POSTGRES_DB + export POSTGRES_USER=$POSTGRES_USER + export POSTGRES_PASSWORD=$POSTGRES_PASSWORD + export COOKIE_SECRET=$COOKIE_SECRET # Initial setup if it doesn't exist if [ ! -d "\$APP_DIR" ]; then sudo mkdir -p \$APP_DIR diff --git a/compose.yml b/compose.yml index 4aee662..23330f2 100644 --- a/compose.yml +++ b/compose.yml @@ -25,8 +25,12 @@ services: ports: - "8000:8000" depends_on: - - chatmap-redis - - chatmap-db + chatmap-redis: + condition: service_started + chatmap-db: + condition: service_started + chatmap-api-migrate: + condition: service_completed_successfully environment: - REDIS_HOST=chatmap-redis - REDIS_PORT=6379 @@ -35,15 +39,15 @@ services: - CHATMAP_API_URL=${CHATMAP_API_URL:-http://localhost:8000} - CHATMAP_ENC_KEY=${CHATMAP_ENC_KEY:-0123456789ABCDEF0123456789ABCDEF} - CHATMAP_DB_HOST=${CHATMAP_DB_HOST:-chatmap-db} - - CHATMAP_DB=${POSTGRES_DB:-chatmap} - - CHATMAP_DB_USER=${POSTGRES_USER:-admin} - - CHATMAP_DB_PASSWORD=${POSTGRES_PASSWORD:-0123456789ABCDEF0123456789ABCDEF} + - CHATMAP_DB=${POSTGRES_DB} + - CHATMAP_DB_USER=${POSTGRES_USER} + - CHATMAP_DB_PASSWORD=${POSTGRES_PASSWORD} - CHATMAP_EXPIRING_MIN=${CHATMAP_EXPIRING_MIN:-30} - CHATMAP_CORS_ORIGINS=${CHATMAP_CORS_ORIGINS:-localhost,127.0.0.1} - CHATMAP_DISABLE_STREAM_CLEANUP=${CHATMAP_DISABLE_STREAM_CLEANUP:-false} - HANKO_API_URL=${HANKO_API_URL:-https://login.hotosm.org} - JWT_ISSUER=${JWT_ISSUER:-https://login.hotosm.org} - - COOKIE_SECRET=${COOKIE_SECRET:-dev-secret-key-min-32-bytes-long!} + - COOKIE_SECRET=${COOKIE_SECRET} - CHATMAP_S3_ENDPOINT_URL=${CHATMAP_S3_ENDPOINT_URL:-} - CHATMAP_S3_BUCKET_NAME=${CHATMAP_S3_BUCKET_NAME:-} - CHATMAP_S3_ACCESS_KEY=${CHATMAP_S3_ACCESS_KEY:-} @@ -57,17 +61,17 @@ services: # Chatmap migrations chatmap-api-migrate: - build: ./chatmap-api/ + image: ghcr.io/hotosm/chatmap-api:latest command: uv run alembic upgrade head depends_on: - chatmap-db networks: - chatmap_net environment: - - CHATMAP_DB_HOST=chatmap-db - - CHATMAP_DB=chatmap - - CHATMAP_DB_USER=admin - - CHATMAP_DB_PASSWORD=0123456789ABCDEF0123456789ABCDEF + - CHATMAP_DB_HOST=${CHATMAP_DB_HOST:-chatmap-db} + - CHATMAP_DB=${POSTGRES_DB} + - CHATMAP_DB_USER=${POSTGRES_USER} + - CHATMAP_DB_PASSWORD=${POSTGRES_PASSWORD} # Backend (IM connector) chatmap-go: @@ -114,9 +118,9 @@ services: image: postgis/postgis:14-3.5-alpine restart: unless-stopped environment: - - POSTGRES_DB=${POSTGRES_DB:-chatmap} - - POSTGRES_USER=${POSTGRES_USER:-admin} - - POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-0123456789ABCDEF0123456789ABCDEF} + - POSTGRES_DB=${POSTGRES_DB} + - POSTGRES_USER=${POSTGRES_USER} + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} volumes: - data:/var/lib/postgresql/data ports: