35 lines
1.3 KiB
Bash
Executable File
35 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Production deploy helper for docker-compose.yml (not docker-compose.dev.yml).
|
|
# Rebuilds the app image from the current working tree, then starts/restarts services
|
|
# (app, worker, db, garage). Receipt storage uses in-stack Garage unless S3_* are
|
|
# overridden in .env. Garage S3 API: localhost:${GARAGE_API_PORT:-3900}.
|
|
#
|
|
# Plain `docker compose up -d` reuses the local image tag and does NOT pick up
|
|
# changes from `git pull`. Always pass --build or use this script after pulling.
|
|
|
|
cd "$(dirname "$0")/.."
|
|
|
|
if [[ -f apps/web/.env ]]; then
|
|
set -a
|
|
# shellcheck disable=SC1091
|
|
source apps/web/.env
|
|
set +a
|
|
fi
|
|
|
|
if command -v git >/dev/null 2>&1; then
|
|
if git rev-parse --is-inside-work-tree >/dev/null 2>&1; then
|
|
BEENVOICE_DEPLOY_SHA="$(git rev-parse --short HEAD)"
|
|
BEENVOICE_IMAGE="${BEENVOICE_IMAGE:-beenvoice:${BEENVOICE_DEPLOY_SHA}}"
|
|
BEENVOICE_WORKER_IMAGE="${BEENVOICE_WORKER_IMAGE:-beenvoice-worker:${BEENVOICE_DEPLOY_SHA}}"
|
|
fi
|
|
fi
|
|
|
|
BEENVOICE_IMAGE="${BEENVOICE_IMAGE:-beenvoice:local}"
|
|
BEENVOICE_WORKER_IMAGE="${BEENVOICE_WORKER_IMAGE:-beenvoice-worker:local}"
|
|
export BEENVOICE_IMAGE BEENVOICE_WORKER_IMAGE
|
|
|
|
echo "Deploying ${BEENVOICE_IMAGE} and ${BEENVOICE_WORKER_IMAGE} (docker compose up -d --build)..."
|
|
exec docker compose up -d --build "$@"
|