39 lines
1.2 KiB
Bash
Executable File
39 lines
1.2 KiB
Bash
Executable File
#!/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!"
|