我有几个使用各种few服务的项目,例如DropBox、AWS。对于管理私有信息,我使用bash_profile,它对heroku非常有用,它使用env变量来管理秘密信息。问题是我的bash_profile正在显著增长(HEROKU_ADD_ON_1,HEROKU_ADD_ON_2等)今天它咬了我。
更好的方法是什么?
发布于 2014-04-28 21:07:49
我通常通过配置文件(通常是特定于环境的)管理所有类型的项目机密,然后再不将这些秘密提交到源代码管理中。这些文件的格式可以是您想要的任何格式/任何运行良好的文件: xml、yaml、json等等。然后代码负责从配置文件中读取值。
有时,这些值不在源代码管理中(例如,使部署变得更加困难),这是很烦人的,但听起来您无论如何都是在单独管理这些值,所以这不会增加太多的开销。
编辑:我对Heroku不太熟悉,所以我只是简单地回答了这个问题。但经过更多的研究后,我可以看到,这可能是一个痛苦的管理。
听起来您已经通过bash_profile来管理配置vars了--这很好,因为您希望有一个“记录源”文档,在这里您可以查看和更改这些值。
除此之外,命名似乎是下一个最重要的事情。HEROKU_ADD_ON_1的描述性不是很强。但是DROPBOX_API_KEY或AWS_S3_BUCKET_KEY更好地了解了变量是什么。您也可以通过良好的命名来区分来自同一个提供者的密钥: FEATURE_A_AWS_KEY和FEATURE_B_AWS_KEY。
https://softwareengineering.stackexchange.com/questions/237273
复制相似问题