impersonation moved
Some checks failed
ci/woodpecker/manual/woodpecker Pipeline failed

This commit is contained in:
Josh 2025-09-12 16:38:15 +00:00
parent 53aeb50d2a
commit 1e28611867

View File

@ -19,10 +19,14 @@ steps:
[ -n "$IMG_TAG" ] || { echo "❌ IMG_TAG empty"; exit 2; } [ -n "$IMG_TAG" ] || { echo "❌ IMG_TAG empty"; exit 2; }
apt-get update -qq && apt-get install -y -qq skopeo apt-get update -qq && apt-get install -y -qq skopeo
# 👉 impersonate BEFORE minting any tokens
gcloud config set auth/impersonate_service_account "woodpecker-ci@aptivaai-dev.iam.gserviceaccount.com" >/dev/null
echo "impersonating: $(gcloud config get-value auth/impersonate_service_account)"
TOKEN="$(gcloud auth print-access-token)" TOKEN="$(gcloud auth print-access-token)"
# Check which images are already in PROD; no arrays to avoid bad-substitution # Check which images already exist in PROD (so we don't try to push them)
gcloud config set auth/impersonate_service_account "woodpecker-ci@aptivaai-dev.iam.gserviceaccount.com"
MISSING="" MISSING=""
for s in server1 server2 server3 nginx; do for s in server1 server2 server3 nginx; do
REF="docker://$DST/$s:$IMG_TAG" REF="docker://$DST/$s:$IMG_TAG"
@ -34,7 +38,7 @@ steps:
if [ -z "$MISSING" ]; then if [ -z "$MISSING" ]; then
echo "✅ All images present in PROD for :$IMG_TAG — skipping mirror" echo "✅ All images present in PROD for :$IMG_TAG — skipping mirror"
else else
echo "🔁 Mirroring to PROD: $MISSING" echo "🔁 Mirroring to PROD:$MISSING"
for s in $MISSING; do for s in $MISSING; do
SRC_REF="docker://$SRC/$s:$IMG_TAG" SRC_REF="docker://$SRC/$s:$IMG_TAG"
DST_REF="docker://$DST/$s:$IMG_TAG" DST_REF="docker://$DST/$s:$IMG_TAG"