在 cloudbuild 模板中,我有一个部署 Cloud 功能的步骤。我尝试在同一步骤部署传递明确环境变量的函数,但也传递secretEnv。
我已经尝试了几件事但没有成功,文档清楚地表明我们不能在同一命令中使用 --set-env-vars 和 --env-vars-file 或 --update-env-vars 。
有没有人成功发送这两种变量类型:从文件中清除变量和使用 secretEnv 的秘密变量?
以下定义成功地从 .env.prod.yaml 创建了变量,但 USER 和 PASSWORD 机密未创建到 Cloud 函数中。
steps:
- name: 'gcr.io/cloud-builders/gcloud'
args: ['functions',
'deploy', 'my-function',
'--runtime', 'go111',
'--entry-point', 'MyFunction',
'--env-vars-file', '.env.prod.yaml',
'--trigger-topic', 'my-topic']
secretEnv: ['USER', 'PASSWORD']
secrets:
- kmsKeyName: projects/my-project/locations/global/keyRings/my-keyring/cryptoKeys/my-key
secretEnv:
USER: XXXXXXXXXXXXXXXXXXXXXXXXXXX
PASSWORD: XXXXXXXXXXXXXXXXXXXXXXXXXXX
有什么想法、最佳实践或好的解决方法吗?