当我试图设置 gcp 服务帐户时,Gitlab ci/cd 作业显示错误(无法读取 json 文件)
Posted
技术标签:
【中文标题】当我试图设置 gcp 服务帐户时,Gitlab ci/cd 作业显示错误(无法读取 json 文件)【英文标题】:Gitlab ci/cd job showing error (Could not read json file) when I'm tring to setup gcp service account 【发布时间】:2021-01-26 11:55:21 【问题描述】:$ echo $SERVICE_ACCOUNT_DEV > $HOME/gcloud-service-key.json
$ gcloud auth activate-service-account --key-file $HOME/gcloud-service-key.json
ERROR: (gcloud.auth.activate-service-account) Could not read json file /root/gcloud-service-key.json: Expecting value: line 2 column 1 (char 1).
我检查了存储在 gitlab ci/cd 变量中的 SERVICE_ACCOUNT_DEV json 文件,但没有问题。
【问题讨论】:
你检查过这个question吗?你使用protected branches 或/和protected variables? 谢谢!这就是问题所在。我将变量添加为受保护的,并没有将分支添加为受保护的。使分支和变量受保护解决了这个问题 谢谢!我发布了一个答案,如果我的评论有帮助,请点赞/接受。 【参考方案1】:查看文档Protected branches 和GitLab CI/CD environment variables。变量可以被保护。每当一个变量受到保护时,它只会被安全地传递给在受保护分支或受保护标签上运行的管道。其他管道不会获得任何受保护的变量。因此,如果您有一个受保护的变量,那么它将仅适用于受保护的分支。
正如评论部分所确认的那样,使分支和变量受保护解决了这个问题。
【讨论】:
以上是关于当我试图设置 gcp 服务帐户时,Gitlab ci/cd 作业显示错误(无法读取 json 文件)的主要内容,如果未能解决你的问题,请参考以下文章