diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 98c8385ca2f2dae74fc0cb248726c7032b533e72..b77d3dd70aa507db79e752b27cee28bd14e2c8ab 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,9 +1,7 @@ default: before_script: - set -e - # env -0 | sort -z | tr '\0' '\n': Sort env output alphabetically, keeping multiline variables intact - # egrep: Remove sensitive information from the output of env - #- env -0 | sort -z | tr '\0' '\n' | egrep -ve '^(DOCKER_AUTH_CONFIG|GOOGLE_APPLICATION_CREDENTIALS)=.*' + # DANGER don't use `set -x` or print the environment via e.g. `env` in pipeline runs, this might leak credentials (has leaked them) interruptible: true tags: - 1cpu-4gb @@ -39,7 +37,7 @@ variables: # TODO should/could we roll back the service to the last working revision on test failure? cache_lint: - image: 'europe-north1-docker.pkg.dev/holi-shared/docker-hub-remote/denoland/deno:2.2.3' + image: 'europe-north1-docker.pkg.dev/holi-shared/docker-hub-remote/denoland/deno:2.2.5' stage: 'test' script: - deno cache --allow-import --lock=deno.lock app/deps.ts app/dev_deps.ts @@ -77,14 +75,16 @@ staging_deploy: url: https://staging.translation.apis.holi.social variables: ENVIRONMENT_ID: staging - only: - - main + rules: + - if: $CI_COMMIT_BRANCH == "main" + when: on_success staging_smoketest: extends: .smoketest needs: ['staging_deploy'] - only: - - main + rules: + - if: $CI_COMMIT_BRANCH == "main" + when: on_success staging_trigger_unified-api_redeployment: needs: ['staging_smoketest'] @@ -94,8 +94,9 @@ staging_trigger_unified-api_redeployment: forward: yaml_variables: false pipeline_variables: false - only: - - main + rules: + - if: $CI_COMMIT_BRANCH == "main" + when: on_success resource_group: unified-api-staging ## production environment @@ -110,14 +111,16 @@ production_deploy: url: https://production.translation.apis.holi.social variables: ENVIRONMENT_ID: production - only: - - production + rules: + - if: $CI_COMMIT_BRANCH == "production" + when: on_success production_smoketest: extends: .smoketest needs: ['production_deploy'] - only: - - production + rules: + - if: $CI_COMMIT_BRANCH == "production" + when: on_success production_trigger_unified-api_redeployment: needs: ['production_smoketest'] @@ -127,6 +130,7 @@ production_trigger_unified-api_redeployment: forward: yaml_variables: false pipeline_variables: false - only: - - production + rules: + - if: $CI_COMMIT_BRANCH == "production" + when: on_success resource_group: unified-api-production diff --git a/Dockerfile b/Dockerfile index dc9ccd1430c7bdb8800935201dbe821045d740b2..670ddbd6ccdf594e17b53ac21a11f29b420ecac5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM europe-north1-docker.pkg.dev/holi-shared/docker-hub-remote/denoland/deno:2.2.3 +FROM europe-north1-docker.pkg.dev/holi-shared/docker-hub-remote/denoland/deno:2.2.5 # The port that your application listens to. EXPOSE 8089