在jenkins版本中包含.env文件的最佳做法是什么?

这是我的情况:我有一个Django的应用程序,这取决于configuration值存储在一个.env文件。 这个.env文件与源代码pipe理是分开的,以保持敏感信息的私密性。 这Django应用程序部署在一个docker容器,我有jenkins设置重build容器,每当检查到我们的Git仓库的变化。 构build将失败,除非在构build环境中存在.env文件。 包含该文件的最佳方式是什么?

我现在有jenkins设置执行一个shell文件写入到生成环境的命令,但我不禁觉得这是次优的,安全明智的。 什么是更好的方法来做到这一点?

我们提出的答案是将文件存储在s3上,并在构build时使用aws cli来获取文件。 由于构build注定要上传到ec2,所以在两个操作中使用aws凭证是有意义的。

将文件包含到仅授予您/授权用户的访问权限的源代码会违反您的隐私政策吗? 否则,您可以尝试始终将文件保存在Jenkins工作区目录中,并且在清理工作区时不要删除它。