Я попытался настроить gitlab, kubernetes на AWS EC2 для devops.
Все работает правильно. но переменные не применяются к стадии производства.
Ниже мой gitlab-ci.yml
image: alpine:latest variables: # KAFKA CONFIG KAFKA_HOST: 'KAFKA_HOST' KAFKA_PORT: '9092' KAFKA_CLIENT_ID: 'k8s_autodevops_client_id' KAFKA_CONSUMER_GROUP_ID: 'k8s_autodevops_client_id' DOCKER_DRIVER: overlay2 ROLLOUT_RESOURCE_TYPE: deployment DOCKER_TLS_CERTDIR: "" # https://gitlab.com/gitlab-org/gitlab-runner/issues/4501 CODE_QUALITY_DISABLED: "true" PERFORMANCE_DISABLED: "true" stages: - build - test - production - performance - cleanup production: image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v0.12.1" stage: production script: - auto-deploy check_kube_domain - auto-deploy download_chart - auto-deploy ensure_namespace - auto-deploy initialize_tiller - auto-deploy create_secret - auto-deploy deploy - auto-deploy delete canary - auto-deploy delete rollout - auto-deploy persist_environment_url environment: name: production url: http://$CI_PROJECT_PATH_SLUG.$KUBE_INGRESS_BASE_DOMAIN artifacts: paths: [environment_url.txt] include: - template: Jobs/Build.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Jobs/Build.gitlab-ci.yml - template: Jobs/Test.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Jobs/Test.gitlab-ci.yml - template: Jobs/Code-Quality.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Jobs/Code-Quality.gitlab-ci.yml - template: Security/Container-Scanning.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Security/Container-Scanning.gitlab-ci.yml - template: Security/Dependency-Scanning.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Security/Dependency-Scanning.gitlab-ci.yml - template: Security/License-Management.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Security/License-Management.gitlab-ci.yml - template: Security/SAST.gitlab-ci.yml # https://gitlab.com/gitlab-org/gitlab-foss/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml
То, что переменные с префиксом KAFKA применяются для сборки, стадии тестирования.
но не применяется только этап производства.
Я также пытался добавить переменные в настройки проекта Gitlab -> CI / CD -> переменные
и тот же результат.
Не удается найти мои пользовательские переменные KAFKA_ * вещи.
Любой другой способ применения переменных для этапа производства ??
PS Версия gitlab - 12.9.2-ee и с использованием GCP Kubernetes Engines, управляемой Gitlab
Это мое недоразумение.
Добавьте префикс 'K8S_SECRET_' к переменным, они применяются к стадии производства.
Поскольку этап тестирования выполняется на herokui sh, но производство Этап запускает кластер kubernetes с контейнером auto_deploy.