是否有将 Cloud Build 中的环境变量注入 App Engine 标准环境的方法?
我不想将我的环境变量推送到 GitHubapp.yaml
或.env
. 因此,当 Cloud Build 拉取和部署时,它会丢失.env
文件并且服务器无法完成某些请求。
我试图避免使用 Datastore,因为 Datastore 的异步性质会使代码变得更加混乱。我尝试使用此处找到的加密机密,但这似乎不起作用,因为我将机密添加到 app deploy 并且它们没有进入部署,所以我认为这不是 Cloud Build 的用例。
我还尝试了此处的教程,将.env
文件从存储导入 App Engine Standard,但由于 Standard 没有本地存储,因此我认为它无效。
那么有没有办法在.env
不使用数据存储、提交app.yaml
或.env
更改控制的情况下注入App Engine 标准环境?可能会使用 Cloud Build、KMS 或某种类型的存储?
这是我尝试过的cloudbuild.yaml
:
steps:
- name: "gcr.io/cloud-builders/gcloud"
args: ["app", "deploy"]
secretEnv: ['SECRET1', 'SECRET2', 'SECRET3', 'SECRET4', 'SECRET5']
timeout: "1600s"
secrets:
- kmsKeyName: projects/<Project-Name>/locations/global/keyRings/<Key-Ring-Name>/cryptoKeys/<Key-Name>
secretEnv:
SECRET1: <encrypted-key-base64 here>
SECRET2: …
Run Code Online (Sandbox Code Playgroud) google-app-engine node.js google-cloud-platform google-cloud-build