GitLab CI Kubernetes变量不是';t集?
我正试图在GitLab上使用Kubernetes设置自动部署。我已在项目设置中成功启用Kubernetes集成 集成图标是绿色的,当我单击“测试设置”时,我看到“我们向提供的URL发送了请求”: 我的部署环境是Google容器引擎 下面是我的GitLab CI Kubernetes变量不是';t集?,kubernetes,gitlab-ci,Kubernetes,Gitlab Ci,我正试图在GitLab上使用Kubernetes设置自动部署。我已在项目设置中成功启用Kubernetes集成 集成图标是绿色的,当我单击“测试设置”时,我看到“我们向提供的URL发送了请求”: 我的部署环境是Google容器引擎 下面是我的gitlab ci.ymlconfig中的自动部署部分: deploy: image: registry.gitlab.com/gitlab-examples/kubernetes-deploy stage: deploy script:
gitlab ci.yml
config中的自动部署部分:
deploy:
image: registry.gitlab.com/gitlab-examples/kubernetes-deploy
stage: deploy
script:
- export
- echo CI_PROJECT_ID=$CI_PROJECT_ID
- echo KUBE_URL=$KUBE_URL
- echo KUBE_CA_PEM_FILE=$KUBE_CA_PEM_FILE
- echo KUBE_TOKEN=$KUBE_TOKEN
- echo KUBE_NAMESPACE=$KUBE_NAMESPACE
- kubectl config set-cluster "$CI_PROJECT_ID" --server="$KUBE_URL" --certificate-authority="$KUBE_CA_PEM_FILE"
- kubectl config set-credentials "$CI_PROJECT_ID" --token="$KUBE_TOKEN"
- kubectl config set-context "$CI_PROJECT_ID" --cluster="$CI_PROJECT_ID" --user="$CI_PROJECT_ID" --namespace="$KUBE_NAMESPACE"
- kubectl config use-context "$CI_PROJECT_ID"
当我查看结果时,部署阶段失败了。这是因为所有KUBE
变量都是空的
除此之外,我在Kubernetes服务方面运气不太好。我遗漏了什么吗?事实证明,除非您配置并引用了一个环境,否则部署变量不会出现 以下是
.gitlab ci.yaml
文件与环境
关键字的外观:
deploy:
image: registry.gitlab.com/gitlab-examples/kubernetes-deploy
stage: deploy
environment: production
script:
- export
- echo CI_PROJECT_ID=$CI_PROJECT_ID
- echo KUBE_URL=$KUBE_URL
- echo KUBE_CA_PEM_FILE=$KUBE_CA_PEM_FILE
- echo KUBE_TOKEN=$KUBE_TOKEN
- echo KUBE_NAMESPACE=$KUBE_NAMESPACE
- kubectl config set-cluster "$CI_PROJECT_ID" --server="$KUBE_URL" --certificate-authority="$KUBE_CA_PEM_FILE"
- kubectl config set-credentials "$CI_PROJECT_ID" --token="$KUBE_TOKEN"
- kubectl config set-context "$CI_PROJECT_ID" --cluster="$CI_PROJECT_ID" --user="$CI_PROJECT_ID" --namespace="$KUBE_NAMESPACE"
- kubectl config use-context "$CI_PROJECT_ID"
任何环境值都可以,但必须存在