pkp*_*kpk 5 amazon-web-services aws-codepipeline aws-codebuild
我从 .env 文件(我使用的是 dotenv 包)中获取环境特定变量。此文件不受版本控制。
使用代码管道阶段 codebuild 如何创建此 .env 文件及其内容?
我在想,我必须使用 buildspec 来创建 .env 文件并将内容添加到 .env 文件中,但不知道如何?
谢谢
小智 6
所以这实际上是一个简单的脚本,采用第一个答案的第二个选项,您可以将以下内容添加到您的 buildspec.yml:
phases:
pre_build:
commands:
- printenv > .env
Run Code Online (Sandbox Code Playgroud)
shell 脚本printenv > .env是将所有进程 env 输出到文件所需的全部内容。
我的建议是摆脱dotenv并使用真实的环境变量。
问题在于dotenv它只是process.env在您的流程内部进行模拟node。它并没有真正为您修改环境变量。它们在您的流程之外不可用node。
我会使用direnv并替换您的.env文件以.envrc进行本地开发。
对于 CI 和生产环境,环境变量现在已在您的 CodeBuild 项目中定义,因此.envrc不需要文件。
请参阅此相关答案以从另一个角度了解更多信息。
如果您想继续使用dotenv,您有多种选择:
.env在 S3 中并在构建过程中检索它。.env使用 CodeBuild 项目中定义的 shell 脚本和环境变量构建文件。我确信还有其他人,但他们对我来说都很老套。
| 归档时间: |
|
| 查看次数: |
2312 次 |
| 最近记录: |