@clever.gy/gcloud-env-机密
从 Google 云密管理器获取秘密并生成的 CLI 工具 .env 基于模板的文件.
说明
@clever.gy/gcloud-env-secrets 是一个生成环境文件的命令行工具( q).env通过将模板中的占位符替换为从Google Cloud Secret Management获取的实际值.
* 特性
- 从 Google 云秘密管理器获取机密
- 生成
.env带有占位符的模板文件 - 校验
gcloud执行前的配置 - 在覆盖已存在文件前提示确认
* 安装
npm install -g @clever.gy/gcloud-env-secrets
或在项目中安装:
npm install --save-dev @clever.gy/gcloud-env-secrets
· 先决条件
-
Google Cloud SDK (gloud) (英语) 安装和配置
- 安装指南 : https://cloud.google.com/sdk/docs/install (中文(简体) )
- macOS(家传):
brew install --cask google-cloud-sdk
-
用 Google 云认证
gcloud auth application-default login -
GCP 项目已配置
gcloud config set project YOUR_GCP_PROJECT -
所需权限: 您的账户必须拥有访问指定项目中的秘密管理器的权限 .
使用量
gcloud-env-secrets <gcpProjectName> <envFileTemplatePath> <envFileOutputPath>
示例
gcloud-env-secrets my-gcp-project .env.template .env
参数
gcpProjectName: Google 云平台项目名称envFileTemplatePath: 路径.env带有占位符的模板文件envFileOutputPath: 最终方向的路径.env将生成文件
模板格式
使用格式创建有占位符的模板文件 $$SECRET{secret-name}数字 :
DATABASE_URL=$$SECRET{database-url}
API_KEY=$$SECRET{api-key}
JWT_SECRET=$$SECRET{jwt-secret}
工具会找到所有占位符,取而代之的是来自"秘密管理器"的实际值.
发展
npm run lint # Lint the code
npm start # Run in development mode
npm run build # Build the project
• 警卫
- ⚠️ 从不 生成的承诺
.env转到您的仓库的文件 - 使用时间
.gitignore排除.env文件 - QQ 保留模板(
.env.template无敏感值的存储器中