【问题标题】:Gitlab AutoDevops environment variable does not applyGitlab AutoDevops 环境变量不适用
【发布时间】:2020-07-21 18:31:39
【问题描述】:

我尝试在 AWS EC2 上为 devops 设置 gitlab、kubernetes。

一切正常。但变量不适用于生产阶段。

下面是我的 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_* 的东西。

还有其他方法可以为生产阶段应用变量吗??

附: gitlab 版本是 12.9.2-ee 并使用 Gitlab 托管的 GCP Kubernetes 引擎

【问题讨论】:

  • 您能否更详细地解释一下它与 GKE 的关系?
  • @mario 我将 GCP 帐户与 Gitlab 管理控制台相关联。并创建集群,没有任何接触。

标签: gitlab google-kubernetes-engine devops gitlab-ci-runner


【解决方案1】:

这是我的误解。

为变量添加“K8S_SECRET_”前缀,它们将应用于生产阶段。

因为 Test 阶段在 herokuish 上运行,但 Production 阶段正在运行带有 auto_deploy 容器的 kubernetes 集群。

【讨论】:

    猜你喜欢
    • 2021-07-25
    • 2021-03-20
    • 2014-12-18
    • 2019-09-15
    • 2023-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-11
    相关资源
    最近更新 更多