我正在尝试使用工作负载身份联合验证我的CI/CD运行器到我的GCP项目。我一直在遵循Gitlab的官方示例,但由于某种原因,我一直得到以下错误:
ERROR: (gcloud.iam.workload-identity-pools.create-cred-config) argument AUDIENCE: Must be specified.
这是我的。gitlab。Yml看起来像:
stages:
- login1
- login2
gcp-auth:
stage: login1
image: google/cloud-sdk:slim
script:
- echo ${CI_JOB_JWT_V2} > .ci_job_jwt_file # CI_JOB_JWT_V2 is automatically generated with each job we run
- gcloud iam workload-identity-pools create-cred-config ${GCP_WI_PROVIDER}
--service-account="${GCP_WIF_SA_EMAIL}"
--output-file=.gcp_temp_cred.json
--credential-source-file=.ci_job_jwt_file
- gcloud auth login --cred-file=`pwd`/.gcp_temp_cred.json
- gcloud auth list
所以从文档中,我传递给命令的第一个参数(在我的例子中${GCP_WI_PROVIDER}
应该是AUDIENCE
),但它一直失败。
你知道是什么问题吗?
我找到问题了。我想使用的变量尚未在项目中定义。我想我需要先引导项目