当从 github 触发云构建时,替换变量为空
Substitution variables are empty when cloud build was triggered from github
我的云构建触发器有一些替换变量并在 Web 控制台上设置。
当我 运行 在 Web 控制台上手动触发时,它运行良好。
但从 github 触发,替换变量为空。
当 github 触发我的构建时,如何设置替换变量?
以下是我的一部分cloudbuild.yaml。
- name: 'gcr.io/cloud-builders/kubectl'
args: ['apply', '-f', 'service/k8s']
env:
- 'CLOUDSDK_COMPUTE_ZONE=${_ZONE}'
- 'CLOUDSDK_CONTAINER_CLUSTER=${_CLUSTER_NAME}'
screenshot of my substitution variables on trigger
我无法重现这个问题。尝试添加这样的步骤来验证执行的替换是什么。
- name: 'gcr.io/cloud-builders/gcloud'
entrypoint: 'bash'
args: ['-c', 'printenv | grep CLOUDSDK']
env:
- 'CLOUDSDK_COMPUTE_ZONE=${_ZONE}'
- CLOUDSDK_CONTAINER_CLUSTER=${_CLUSTER_NAME}
这里我只grep了包含CLOUDSDK
的环境变量。
我尝试使用和不使用环境变量周围的简单引号,使用和不使用 substitutions section。在所有情况下,它都适用于手动启动和 GitHub 事件启动。
还要检查调用的是正确的触发器(如果有多个,请禁用除此之外的所有触发器)
我的云构建触发器有一些替换变量并在 Web 控制台上设置。 当我 运行 在 Web 控制台上手动触发时,它运行良好。 但从 github 触发,替换变量为空。 当 github 触发我的构建时,如何设置替换变量?
以下是我的一部分cloudbuild.yaml。
- name: 'gcr.io/cloud-builders/kubectl'
args: ['apply', '-f', 'service/k8s']
env:
- 'CLOUDSDK_COMPUTE_ZONE=${_ZONE}'
- 'CLOUDSDK_CONTAINER_CLUSTER=${_CLUSTER_NAME}'
screenshot of my substitution variables on trigger
我无法重现这个问题。尝试添加这样的步骤来验证执行的替换是什么。
- name: 'gcr.io/cloud-builders/gcloud'
entrypoint: 'bash'
args: ['-c', 'printenv | grep CLOUDSDK']
env:
- 'CLOUDSDK_COMPUTE_ZONE=${_ZONE}'
- CLOUDSDK_CONTAINER_CLUSTER=${_CLUSTER_NAME}
这里我只grep了包含CLOUDSDK
的环境变量。
我尝试使用和不使用环境变量周围的简单引号,使用和不使用 substitutions section。在所有情况下,它都适用于手动启动和 GitHub 事件启动。
还要检查调用的是正确的触发器(如果有多个,请禁用除此之外的所有触发器)