Files
proxmox/scripts/dev-vm/trigger-phoenix-deploy.sh

38 lines
1.2 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
# Trigger phoenix-deploy-api directly for smoke tests or manual promotion.
#
# Usage:
# bash scripts/dev-vm/trigger-phoenix-deploy.sh
# bash scripts/dev-vm/trigger-phoenix-deploy.sh d-bis/proxmox main default
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/../.." && pwd)"
[[ -f "${PROJECT_ROOT}/.env" ]] && set -a && source "${PROJECT_ROOT}/.env" && set +a
REPO="${1:-d-bis/proxmox}"
BRANCH="${2:-main}"
TARGET="${3:-default}"
SHA="${4:-manual-$(date +%Y%m%d%H%M%S)}"
DEPLOY_URL="${PHOENIX_DEPLOY_URL:-http://192.168.11.59:4001/api/deploy}"
DEPLOY_TOKEN="${PHOENIX_DEPLOY_TOKEN:-${PHOENIX_DEPLOY_SECRET:-}}"
if [[ -z "${DEPLOY_TOKEN}" ]]; then
echo "ERROR: set PHOENIX_DEPLOY_TOKEN or PHOENIX_DEPLOY_SECRET in root .env" >&2
exit 1
fi
echo "Triggering deploy:"
echo " URL: ${DEPLOY_URL}"
echo " Repo: ${REPO}"
echo " Branch: ${BRANCH}"
echo " Target: ${TARGET}"
echo " SHA: ${SHA}"
curl -sSf -X POST "${DEPLOY_URL}" \
-H "Authorization: Bearer ${DEPLOY_TOKEN}" \
-H "Content-Type: application/json" \
-d "{\"repo\":\"${REPO}\",\"branch\":\"${BRANCH}\",\"target\":\"${TARGET}\",\"sha\":\"${SHA}\"}" | jq .