pipeline build v36 - single-line commands
This commit is contained in:
parent
ebed412f52
commit
efa9215eba
@ -23,19 +23,11 @@ steps:
|
|||||||
- name: docker-sock
|
- name: docker-sock
|
||||||
path: /var/run/docker.sock
|
path: /var/run/docker.sock
|
||||||
commands:
|
commands:
|
||||||
- |
|
- set -eu
|
||||||
set -eu
|
- REG=us-central1-docker.pkg.dev/aptivaai-dev/aptiva-repo
|
||||||
REG=us-central1-docker.pkg.dev/aptivaai-dev/aptiva-repo
|
- TAG=$(echo "$CI_COMMIT_SHA" | head -c 8)
|
||||||
TAG=$(echo "$CI_COMMIT_SHA" | head -c 8)
|
- docker buildx create --use --name woodpecker || true
|
||||||
|
- for svc in server1 server2 server3 nginx; do docker buildx build -f Dockerfile.${svc} -t ${REG}/${svc}:${TAG} --push .; done
|
||||||
docker buildx create --use --name woodpecker || true
|
|
||||||
|
|
||||||
for svc in server1 server2 server3 nginx; do
|
|
||||||
docker buildx build \
|
|
||||||
-f Dockerfile.${svc} \
|
|
||||||
-t ${REG}/${svc}:${TAG} \
|
|
||||||
--push .
|
|
||||||
done
|
|
||||||
when:
|
when:
|
||||||
event: [push, manual]
|
event: [push, manual]
|
||||||
branch: [master]
|
branch: [master]
|
||||||
@ -51,64 +43,23 @@ steps:
|
|||||||
known_hosts:
|
known_hosts:
|
||||||
from_secret: STAGING_KNOWN_HOSTS
|
from_secret: STAGING_KNOWN_HOSTS
|
||||||
script:
|
script:
|
||||||
- |
|
- set -euo pipefail
|
||||||
set -euo pipefail
|
- ENV=dev
|
||||||
|
- PROJECT=aptivaai-dev
|
||||||
ENV=dev
|
- ROOT=/opt/aptiva-staging-app
|
||||||
PROJECT=aptivaai-dev
|
- REG=us-central1-docker.pkg.dev/${PROJECT}/aptiva-repo
|
||||||
ROOT=/opt/aptiva-staging-app
|
- TAG=$(echo "$CI_COMMIT_SHA" | head -c 8)
|
||||||
REG=us-central1-docker.pkg.dev/${PROJECT}/aptiva-repo
|
- cd "$ROOT"
|
||||||
TAG=$(echo "$CI_COMMIT_SHA" | head -c 8)
|
- export IMG_TAG="$TAG"
|
||||||
|
- SECRETS=(JWT_SECRET OPENAI_API_KEY ONET_USERNAME ONET_PASSWORD STRIPE_SECRET_KEY STRIPE_PUBLISHABLE_KEY STRIPE_WH_SECRET STRIPE_PRICE_PREMIUM_MONTH STRIPE_PRICE_PREMIUM_YEAR STRIPE_PRICE_PRO_MONTH STRIPE_PRICE_PRO_YEAR DB_HOST DB_PORT DB_USER DB_PASSWORD TWILIO_ACCOUNT_SID TWILIO_AUTH_TOKEN TWILIO_MESSAGING_SERVICE_SID)
|
||||||
cd "$ROOT"
|
- echo "🔐 Pulling secrets from Secret Manager"
|
||||||
export IMG_TAG="$TAG"
|
- for S in "${SECRETS[@]}"; do export "$S"="$(gcloud secrets versions access latest --secret="${S}_${ENV}" --project="${PROJECT}")"; done
|
||||||
|
- export FROM_SECRETS_MANAGER=true
|
||||||
SECRETS=(
|
- preserve_vars=(IMG_TAG FROM_SECRETS_MANAGER $(IFS=,; echo "${SECRETS[*]}"))
|
||||||
JWT_SECRET
|
- preserve=$(IFS=,; echo "${preserve_vars[*]}")
|
||||||
OPENAI_API_KEY
|
- echo "🚀 Deploying with preserved env: $preserve"
|
||||||
ONET_USERNAME
|
- sudo --preserve-env="$preserve" docker compose pull
|
||||||
ONET_PASSWORD
|
- sudo --preserve-env="$preserve" docker compose up -d --force-recreate --remove-orphans
|
||||||
STRIPE_SECRET_KEY
|
|
||||||
STRIPE_PUBLISHABLE_KEY
|
|
||||||
STRIPE_WH_SECRET
|
|
||||||
STRIPE_PRICE_PREMIUM_MONTH
|
|
||||||
STRIPE_PRICE_PREMIUM_YEAR
|
|
||||||
STRIPE_PRICE_PRO_MONTH
|
|
||||||
STRIPE_PRICE_PRO_YEAR
|
|
||||||
DB_HOST
|
|
||||||
DB_PORT
|
|
||||||
DB_USER
|
|
||||||
DB_PASSWORD
|
|
||||||
TWILIO_ACCOUNT_SID
|
|
||||||
TWILIO_AUTH_TOKEN
|
|
||||||
TWILIO_MESSAGING_SERVICE_SID
|
|
||||||
)
|
|
||||||
|
|
||||||
echo "🔐 Pulling secrets from Secret Manager"
|
|
||||||
for S in "${SECRETS[@]}"; do
|
|
||||||
export "$S"="$(gcloud secrets versions access latest --secret="${S}_${ENV}" --project="${PROJECT}")"
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
export FROM_SECRETS_MANAGER=true
|
|
||||||
|
|
||||||
preserve_vars=(
|
|
||||||
IMG_TAG
|
|
||||||
FROM_SECRETS_MANAGER
|
|
||||||
$(IFS=,; echo "${SECRETS[*]}")
|
|
||||||
)
|
|
||||||
preserve=$(IFS=,; echo "${preserve_vars[*]}")
|
|
||||||
|
|
||||||
echo "🚀 Deploying with preserved env: $preserve"
|
|
||||||
|
|
||||||
sudo --preserve-env="$preserve" \
|
|
||||||
docker compose pull
|
|
||||||
|
|
||||||
sudo --preserve-env="$preserve" \
|
|
||||||
docker compose up -d \
|
|
||||||
--force-recreate \
|
|
||||||
--remove-orphans
|
|
||||||
when:
|
when:
|
||||||
event: [push, manual]
|
event: [push, manual]
|
||||||
branch: [master]
|
branch: [master]
|
||||||
|
Loading…
Reference in New Issue
Block a user