diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c4eafd7397713486c12cd5e4e106d3be074b0efc..06cf5af88ed1ccc98c2cbf6d2cee086494b3c712 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,7 +4,6 @@ variables: stages: - build - deploy - - setup .be-build-job: variables: @@ -27,17 +26,18 @@ stages: only: - main -.be-deploy-job: - variables: - KUBECTL_VERSION: v1.8.10 - IMAGE_NAME: $CI_REGISTRY_IMAGE/backend +#==[ Backend deployment ]======================================================= +.be-deploy-job: + image: docker:latest stage: deploy tags: - commul - image: docker:latest services: - docker:dind + variables: + KUBECTL_VERSION: v1.8.10 + IMAGE_NAME: $CI_REGISTRY_IMAGE/backend before_script: - wget https://storage.googleapis.com/kubernetes-release/release/$KUBECTL_VERSION/bin/linux/amd64/kubectl # NOTE: version is too ald and don't have sha256 available @@ -47,41 +47,32 @@ stages: - docker login -u $CI_REGISTRY_USER -p $CI_JOB_TOKEN https://$CI_REGISTRY script: - kubectl version --client - - echo YAY! - - docker pull ${IMAGE_NAME}:main - #- kubectl --namespace kommul-dev set image deployment/merlin browser=${CONTAINER_IMAGE}:${CI_COMMIT_SHA} - only: - - main + - docker pull ${IMAGE_NAME}:${CI_COMMIT_SHA} + #- kubectl --namespace $K8S_NAMESPACE set image deployment/$K8S_DEPLOYMENT webserver=${IMAGE_NAME}:${CI_COMMIT_SHA} -.be-setup-job: - image: node:16-alpine - stage: setup - cache: - - key: - files: - - backend/package-lock.json - paths: - - backend/node_modules - script: - # TODO: drop python once we stop using sqlite3 in CI (soon, please) - - apk add --update python2 build-base - - cd backend - - npm install - - echo Success! +be-prd-deploy-job: + extends: .be-deploy-job + environment: + name: production/backend + deployment_tier: production + url: https://kommul.eurac.edu/oetzi + variables: + K8S_NAMESPACE: kommul + K8S_DEPLOYMENT: oetzi-prd-deployment + only: # TODO: only on tag + - main -.fe-setup-job: - image: node:16-alpine - stage: setup - cache: - - key: - files: - - frontend/package-lock.json - paths: - - frontend/node_modules - script: - - cd frontend - - npm install - - echo Success! +be-stg-deploy-job: + extends: .be-deploy-job + environment: + name: staging/backend + deployment_tier: staging + url: https://kommul-dev.eurac.edu/oetzi + variables: + K8S_NAMESPACE: kommul-dev + K8S_DEPLOYMENT: oetzi-stg-deployment + only: + - development #==[ Frontend deployment ]======================================================