ruby-on-rails – 人们将capistrano deploy.rb和食谱提交给他们
对于这个相当愚蠢的问题感到抱歉,但人们会将他们的Capistrano文件(Capfile,deploy.rb,multisite> config / deploy / *)提交给他们的私人scm回购?
是否有人们遵循的最佳做法或标准?你关注什么? 谢谢. 解决方法
最佳做法是“是”,提交您的deploy.rb,但不提交包含密码,api_keys或其他私有数据的任何文件 – 而是制作这些文件模板,例如在
database.yml中提交具有数据库名称,端口,用户名的文件,但是类似于
password: <db_password> 创建模板文件. 显然,如果您的项目是像GitHub这样的公共回购,那么它是正确的.但是,如果您的SCM是私有的,正如您所说,您应该将其视为任何其他安全资源.密码和密钥不仅仅是“任何其他安全资源” – 它们应该是高度安全的. 对于完全自我配置的系统,创建capistrano(或者rake)任务,读取具有各种密码或密钥的精心控制的本地文件(可能是YAML),并且一旦部署了已提交的文件,就将密码写入模板. 如果密码或配置文件的格式变化不大,您可以使用cap:setup任务,然后手动添加密码,将它们保留在app / shared / config目录中,并让capistrano在源树中创建一个符号链接部署. 在部署方面,这只是一个高权限用户应该执行的操作(特别是对于生产).通过此操作,您可以使密码和其他敏感数据仅对已??被授予对给定服务器的访问权限的用户可见. Ryan Bates在这样的策略上做了一些不错的RailsCasts,请查看some of these episodes.注意,许多RailsCasts不再免费,但每月9美元,这非常值得! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- postgresql – 返回给定表的动态列集的函数
- 【Cocos2d-x】使用贝塞尔曲线(Bezier)实现精灵
- 在Oracle中一次执行多条sql语句,结束符很重要
- ios – 继承什么! :search_paths呢?
- ruby-on-rails-3 – sunspot_solr – NoMethodEr
- The Swift Programming Language学习笔记(二十三
- xml – XSLT 2.0:如何使用条件检查迭代for-each
- xml – Odoo 10:为自定义模块创建安全规则
- XML 解析错误:XML 或文本声明不在实体的开头位置
- postgresql 查看数据库,表,索引,表空间以及大小