Something went wrong on our end
.gitlab-ci.yml 5.18 KiB
default:
before_script:
- set -ex
- env
interruptible: true
tags:
- holi-small # build on smaller machine
variables:
API_DOMAIN_PATH: "$CI_PROJECT_DIR/api_domain"
# job templates
.deploy:
image:
name: 'hashicorp/terraform:1.1.9'
# default entrypoint is terraform command, but we want to run shell scripts
entrypoint: ["/bin/sh", "-c"]
variables:
ENVIRONMENT_ID: $CI_ENVIRONMENT_SLUG
artifacts:
paths:
- "terraform/environments/scripts/crash.log" # optional, only available in case of a crash/panic
- "terraform/environments/scripts/terraform-*.log" # separate log for every step/command
- $API_DOMAIN_PATH
name: "${CI_JOB_NAME}_${CI_JOB_ID}"
#when: on_failure
script:
- export GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_CLOUD_SERVICE_ACCOUNT}
- terraform/environments/scripts/create-or-update-env.sh $ENVIRONMENT_ID $CI_COMMIT_SHA
- echo "$(terraform/environments/scripts/get-api-domain.sh)" > $API_DOMAIN_PATH
resource_group: $ENVIRONMENT_ID # never execute terraform in parallel on the same environment
interruptible: false
.e2e:
image: 'codeceptjs/codeceptjs'
script:
- API_DOMAIN=`cat $API_DOMAIN_PATH`
- echo "e2e tests against $CI_ENVIRONMENT_SLUG environment go here and against $API_DOMAIN"
- terraform/environments/scripts/wait-for-ssl.sh "https://${API_DOMAIN}"
# end job templates
# pipeline in chronological order
## common steps
install_lint_test:
stage: build
image: 'node:18-alpine'
script:
- yarn install
- yarn lint
- yarn test
tags:
- holi-big
# You can override the included template(s) by including variable overrides
# SAST customization: https://docs.gitlab.com/ee/user/application_security/sast/#customizing-the-sast-settings
# Secret Detection customization: https://docs.gitlab.com/ee/user/application_security/secret_detection/#customizing-settings
# Dependency Scanning customization: https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#customizing-the-dependency-scanning-settings
# Container Scanning customization: https://docs.gitlab.com/ee/user/application_security/container_scanning/#customizing-the-container-scanning-settings
# Note that environment variables can be set in several places
# See https://docs.gitlab.com/ee/ci/variables/#cicd-variable-precedence
sast:
needs: ['install_lint_test']
stage: test
include:
- template: Security/SAST.gitlab-ci.yml