#!/usr/bin/env bash set -euo pipefail IMAGE="registry.claiborne.soy/busi488energy:latest" KCTX="media" DB_LOCAL_PORT=5434 # Source .env for build args set -a source "$(dirname "$0")/../.env" set +a # Start port-forward to prod DB echo "==> Port-forwarding postgis on :${DB_LOCAL_PORT}..." kubectl --context "$KCTX" -n database port-forward svc/postgis "${DB_LOCAL_PORT}:5432" & PF_PID=$! trap "kill $PF_PID 2>/dev/null || true" EXIT sleep 2 BUILD_DATABASE_URL="postgresql://busi488energy:busi488energy@host.docker.internal:${DB_LOCAL_PORT}/busi488energy" echo "==> Building ${IMAGE}..." docker build --network=host \ --build-arg DATABASE_URL="postgresql://busi488energy:busi488energy@127.0.0.1:${DB_LOCAL_PORT}/busi488energy" \ --build-arg NEXT_PUBLIC_GOOGLE_MAPS_API_KEY="$NEXT_PUBLIC_GOOGLE_MAPS_API_KEY" \ --build-arg NEXT_PUBLIC_GOOGLE_MAP_ID="$NEXT_PUBLIC_GOOGLE_MAP_ID" \ --build-arg EIA_API_KEY="$EIA_API_KEY" \ --build-arg FRED_API_KEY="$FRED_API_KEY" \ -t "$IMAGE" . echo "==> Pushing ${IMAGE}..." docker push "$IMAGE" echo "==> Restarting deployment..." kubectl --context "$KCTX" -n random rollout restart deploy/busi488energy kubectl --context "$KCTX" -n random rollout status deploy/busi488energy --timeout=120s echo "==> Done!"