openstack 开发
上周,我们研究了一些定义OpenStack社区及其建立的项目的数字 。 但是,这些数字如何与其他大型开放源代码项目相提并论,更重要的是,它们如何告诉我们有关OpenStack的信息? 从其他类似规模项目的成功和失败中可以学到什么?
上个月在亚特兰大举行的OpenStack峰会上,我参加了Parallels服务器虚拟化技术首席技术官James Bottomley的演讲,试图为这些数字赋予一些含义。 Bottomley在这两个项目上都有经验,作为Linux内核中SCSI子系统的维护者,以及他在Parallels从事OpenStack和相关技术的工作。
在某些方面,Linux内核和OpenStack令人惊讶地接近。 在2月份,OpenStack的每月提交数量首次超过内核,尽管数量可变,但这些数量追踪得相当紧密。 因此,鉴于它们的大小相似,项目有何不同? 这是Bottomley提供的四个示例。
处理
提交代码并使这些更改被接受的过程有些不同。 这两个项目都有正式的文档,但是在内核中,与OpenStack不同,这取决于代码各个部分的维护者来实施这些规则。 结果是规则的适用不均衡,无论好坏。 在某种程度上,冗长的正式流程可能会劝阻新的供稿人或使提交较小的修订更加乏味,但是它以可预测性和公平性的形式带来了明显的好处。
测试中
OpenStack的测试程序提供了Linux内核从未有过的示例,但是内核最近开始在Linux Foundation支持的项目下尝试模仿OpenStack的模型。 OpenStack的广泛测试基础架构依赖于Jenkins,它与审阅过程相关,由于审阅过程中存在差异,因此无法完全复制。 但是,正在采取步骤模仿这些概念(如果不是工具的话)。
评论
与其他领域一样,OpenStack的流程也更加正式。 但是形式化或缺乏形式化不是主要问题。 相反,我们看到这两个项目都遇到一个共同的问题:没有足够的审阅者来阻止提交堆积。 吸引和保持合格和专门的审阅者一直是两个项目的问题。 与此相关的是,两个项目都难以解决问题,或者将任意代码重构请求蔓延到审查过程中。 这不是一个工具问题,而是一个社会问题,在这方面汲取的教训将使两个项目都受益。
发布周期
内核的发布周期大约是OpenStack的两倍。 在内核的情况下,大约有2-3个月的发布周期,其中包含两周的合并期以及六到十周的稳定工作。 OpenStack的周期为六个月,由四个星期的计划窗口,14个星期的代码合并以及六个星期的稳定时间组成。 结果? 内核的发布速度更快,但每个版本的更改可能不太重要。
想了解更多? 完整的视频长达37分钟,非常值得观看。
翻译自: https://opensource.com/business/14/6/openstack-and-linux-developer-communities-compared
openstack 开发