【.com快译】开源不仅仅是发布代码,我们还需要构建配套的基础设施,并邀请人们加入和贡献。为了构建一个充满活力、不断发展和令人兴奋的项目,社区需要让更多的人参与治理、文档、代码创建和重组。尽管许多项目打着“开放一切”的旗号,但其基础设施的大门往往被拒绝进入。通常,开源项目只有少数人管理他们的基础设施并保持其正常运行。虽然将王国核心金库的钥匙交给每个人并不安全,但我们确实需要对每个参与者给予一定程度的信任。Ansible、Chef和Puppet等基础设施工具在过去几年中广受欢迎。这意味着开源项目的基础架构即代码目标可以完全实现,允许每个贡献者具有相同级别的访问权限。为了保持这种势头,以下是我们将共同努力的几个关键点:以开放的方式做出决策:使用公共邮件列表来讨论和规划与基础设施相关的问题。在决策过程中,确保每一步都来自社区。具体来说,避免任何由少数人决定的操作模式。将基础架构定义为代码:使用Ansible、Puppet或其他配置管理工具来确保贡献者可以推动基础架构开发。这使开发人员和更广泛的社区更容易定义新类型的任务。定义基础架构所有权:明确定义基础架构所有权并发布故障后取证结果。这种透明度有助于增加社区信任,并允许参与者更积极地做出贡献。清晰的贡献路径:定义清晰的基础设施贡献路径。正如我的一个朋友所说,“如果您需要root访问权限来完成日常工作,那就错了。”但是在开放基础设施的过程中,肯定会遇到一些问题。以下是一些常见问题以及解决方法。必然会改变现状:改变基础设施流程时,原有的工作机制也会受到影响。结果,团队中可能会有一些不满。因此,请务必提前公布计划,以便在分布式基础上实施更改。站在团队一边,积极解决影响生产力的一切。大量需要修复的问题:基础设施中总是存在需要修复的问题。请注意,面对如此复杂无序的情况,最好是一一记录下来,而不是立即修复。在整个过程中进展会相当缓慢,但确保一致的结果很重要。最重要的是,不要被琐事淹没。打破规则:在对流程和基础架构进行大规模更改时,总会打破一些规则。确保以公开的方式记录和总结故障。制定计划以避免将来出现类似错误。工作似乎永无止境:它就是——它就是如此。项目需要对基础设施进行更改,并且永远不会“完成”。一旦解决了这个问题,就会有另一个问题等待着。最重要的是,这种开放不仅仅意味着将基础设施的领导权分配给每个贡献者,还意味着每个人都可以参与相关文档和流程的改进。原标题:打通你项目基础设施的4种方法原作者:NigelBabu
