infra/scripts/tg

23 lines
707 B
Text
Raw Normal View History

#!/usr/bin/env bash
# scripts/tg — wrapper: decrypt secrets then run terragrunt
# Usage: scripts/tg apply --non-interactive
# scripts/tg run --all -- plan
set -euo pipefail
REPO_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
SOPS_FILE="$REPO_ROOT/secrets.sops.json"
OUT_FILE="$REPO_ROOT/secrets.auto.tfvars.json"
# Decrypt if needed (skips if already decrypted and up-to-date)
if [ -f "$SOPS_FILE" ]; then
if [ ! -f "$OUT_FILE" ] || [ "$SOPS_FILE" -nt "$OUT_FILE" ]; then
TEMP=$(mktemp "$OUT_FILE.XXXXXX")
trap "rm -f '$TEMP'" EXIT
sops -d "$SOPS_FILE" > "$TEMP"
mv "$TEMP" "$OUT_FILE"
echo "Decrypted secrets.sops.json → secrets.auto.tfvars.json"
fi
fi
exec terragrunt "$@"