【发布时间】:2020-07-19 03:53:32
【问题描述】:
在我的前端应用程序中,我将敏感信息存储在环境中并按如下方式使用它们:
const client_secret = process.env.CLIENT_SECRET;
在本地开发中,我使用dotenv package 传递.env 文件中的值
CLIENT_SECRET=XXXXX
.env 文件未提交。
我在部署过程中使用了 CircleCI,并将 CLIENT_SECRET 值保存在 CircleCI 环境变量中,但是如何传递到应用程序中?
这是我的 CircleCI config.yml:
- deploy:
name: Deploy
command: |
ENVIRONMENT=${ENVIRONMENT:=test}
VERSION=`date "+%Y-%m-%dt%H%M"`
if [ "${ENVIRONMENT}" = "production" ]; then
APP_FILE=app-prod.yaml
else
APP_FILE=app.yaml
fi
gcloud app deploy ${APP_FILE} --quiet --version ${VERSION}
我可以在app.yaml:
env_variables:
NODE_ENV: 'production'
CLIENT_SECRET: XXXXX
但我不想将敏感信息包含到.yaml 文件中并提交它们。有谁知道我可以通过什么方式将环境值传递到应用程序中?
我使用的是谷歌云平台,
gcloud app deploycommand 似乎没有包含环境变量的标志。
【问题讨论】:
标签: node.js google-app-engine deployment environment-variables circleci-2.0