Open NazcaLines opened 8 years ago
Openstack
拜大openstack社区~~
哇,第一个访客!!!
你这是翻译的社区贡献流程嘛?
我简单总结了一下。 说真的,我特别希望你能开一个开源计划,顺便把我拉进去~
@NazcaLines 我暂时没想好要写什么, 先读点paper看看有没有什么能做的再说~
@NazcaLines 但是我有翻译项目啊~~ :;)
这两是讨论分布式事务的: https://trello-attachments.s3.amazonaws.com/560ceced9f7a784cd16c3776/564d977151043ebb7cd85069/7e7faaa679d3c809578cabd1664a9fd0/fit.pdf
https://trello-attachments.s3.amazonaws.com/560ceced9f7a784cd16c3776/564d977151043ebb7cd85069/51bdfe592cf437a6dd00ab7f015d418e/socc10-das.pdf
这个是设计网络应用架构的: https://trello-attachments.s3.amazonaws.com/560ceced9f7a784cd16c3776/564d977151043ebb7cd85069/bf6ae4eef83b1672ec1bd17f2f5a831c/fielding_dissertation.pdf
这个是讲CRDT数据类型的, 用于最终一致性解决方案: https://trello-attachments.s3.amazonaws.com/560ceced9f7a784cd16c3776/564d977151043ebb7cd85069/0a68ca9c15a394ce09790e0ee7580f59/a-comprehensive-study-of-convergent-and-communative-replicated-data-types.pdf
剩下两个关于缓存, 内存管理优化方面的:
https://trello-attachments.s3.amazonaws.com/560ceced9f7a784cd16c3776/564d977151043ebb7cd85069/e557f39d58105f96add86de00d56cad4/P439.PDF
https://trello-attachments.s3.amazonaws.com/560ceced9f7a784cd16c3776/564d977151043ebb7cd85069/d1a78e27b9308041fe08632e423b6a2b/leases-gray.pdf
Openstack
贡献方式
如果你要新增一项特性,那么你首先需要撰写一个BP,写明为什么你要这么做,怎么做,以及后果。一旦这个BP被通过了,你就可以按照自己的意愿开始干活了。
https://bugs.launchpad.net/项目名 这个页面中会显示特定项目的bug列表。你可以从中选择bug进行修复。
在gerrit中,会显示很多其他人提交的patch,你可以review他人的代码并且给出评分。一般用户最多只能+1分,core review成员有+2分的能力。 一个patch能否被用过,决定于是否达到2个+2分的review。当然,如果你觉得他人的代码写的不够,做法有些妥当,那么-1分也是可以的。
与社区保持联系
IRC是常用的即时聊天工具。OpenStack使用freenode进行通信。建议下载Xchat,连接freenode,然后就可以加入任何一个channel。 一般来说都是 openstack-项目名 例如openstack-nova就是nova项目的讨论组。
OpenStack各个项目都有属于自己的每周例会,在特定的频道中进行会议。一般是openstack-meeting-alt. 如果你有什么议题,可以在所在项目的wiki页面上的meeting agenda中添加,会议上会逐项审议,就可以讨论到你的议题了。比如,你写了一个BP,那么可能需要你在会议中提出来,由大家进行讨论,根据反馈结果进行修改,这样BP被通过的概率就会大大提高了。
提交PATCH
commit信息的写法很有讲究。一般是第一行写概要,指出这个patch做了什么,然后空2行写具体内容。最后,如果是实现一个bp,那么需要在commit信息中加上Implements: blueprint bp名称 。 这样一旦这个patch被merge了, 那么你所提出的bp就会被系统自动标注为已经实现。
所有的code review都是在gerrit平台上进行的。所以,我们要先配置好git-review才可以向平台提交patch。
OpenStack代码通用库
这是一个文档生成工具,可以根据RST文档,自动生成HTML。Opentack大量使用了这个module.
这是用于替代pathon setupuptools的 module。提供更加强大的功能:
tox是一个测试工具,你只需要写好测试用例,配置好tox(tox.ini)然后运行tox就好了。它会自动安装测试过程中需要的包,并且它是运行在干净的虚拟环境中。