From d803ba643f4513e2b855989f426fda1ee6c24e88 Mon Sep 17 00:00:00 2001 From: Vojtech Mares Date: Mon, 24 Jun 2024 19:04:20 +0200 Subject: [PATCH] ci: add deploy stage and deploy to k8s staging environment --- .gitlab-ci.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4abaa7e..f26e7ee 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,6 +4,7 @@ default: stages: - test - build + - deploy test:go: stage: test @@ -58,3 +59,25 @@ build:migrations: - docker buildx create --name yggdrasil --use - docker buildx build --provenance=false --platform linux/amd64,linux/arm64 -t $IMAGE:$TAG -f build/package/migrations/Dockerfile --push . - docker manifest inspect $IMAGE:$TAG + +deploy:staging: + stage: deploy + image: ghcr.io/vojtechmares/toolkit:latest + rules: + - if: $CI_COMMIT_BRANCH == "main" + variables: + TAG: $CI_COMMIT_REF_SLUG-$CI_COMMIT_SHORT_SHA + NAMESPACE: yggdrasil-staging + GIT_DEPTH: 1 # shallow clone + environment: + name: staging + url: https://staging.yggdrasil.vmdevel.cz + script: + - > + helm upgrade --install --namespace $NAMESPACE --create-namespace \ + api ./deploy \ + --values deploy/values.staging.yaml \ + --set image.tag=$TAG \ + --set imageCredentials.username=$REGISTRY_USERNAME \ + --set imageCredentials.password=$REGISTRY_PASSWORD \ + --set config.database.url=$DATABASE_URL