代码类贡献
在签署了CLA协议,贡献者可以找到想参与的项目或兴趣小组,开始自己的社区贡献之旅!社区贡献的方式多种多样。
发送CLA之前,首先要完成邮件列表订阅:
- 发空邮件至 cla+subscribe@lists.opencloudos.org
- 您的邮箱将收到一封来自邮件列表的电子邮件,要求您确认订阅了邮件列表,回复该电子邮件确认订阅
- 您的邮箱收到来自一封来自邮件列表的欢迎邮件,即成功订阅该邮件列表
- 给cla@lists.opencloudos.org发CLA文本邮件即可完成签署
提交和处理Issue
● 找到Issue列表:在感兴趣的repo内,点击“Issues”就可以找到其Issue列表;
● 提交Issue:如果您准备向社区上报Bug或者提交需求,或者为OpenCloudOS社区贡献自己的意见或建议,请在OpenCloudOS社区对应的repo上提交Issue;
(1)提交Issue请参考 Issue提交指南。为了吸引更广泛的注意,您也可以把Issue的链接附在邮件内,通过邮件列表发送给所有人。
(2)参与Issue内的讨论:每个Issue下面可能已经有参与者们的交流和讨论,如果您感兴趣,也可以在评论框中发表自己的意见
● 处理的Issue:如果您愿意处理其中的一个issue,可以将它分配给自己。只需要在评论框内输入 /assign或 /assign @yourself,机器人就会将问题分配给您,您的名字将显示在负责人列表里。
贡献代码
● 准备OpenCloudOS开发环境
● 了解相关项目与兴趣小组的开发注意事项
(1)每个项目与兴趣小组因历史、技术或者习惯等原因可能使用不同的编码语言、开发环境、编码约定。
(2)这些约定可参考该项目或兴趣小组的贡献者指南。该指南一般是在其repo的首页地址内,多数见CONTRIBUTING.MD文件,有时也可在该repo的README.MD文件内找到。
● 下载代码和拉分支
OpenCloudOSr使用Github.com作为首选代码托管平台。要参与代码贡献,您还需要了解在GitHub如何下载代码、提交PR、合入代码等。
● 本地修改、构建和验证: 在本地分支上进行代码修改、构建和验证,请参考构建软件包。
● 提交 Pull-Request (PR):提交PR即意味您已经开始给社区贡献代码了。请参考 OpenCloudOS 社区PR提交指导。
为了使您的提交更容易被接受,建议:
● 遵循项目与兴趣小组的编码和PR提交约定
● 尽可能提供完善的提交信息
● 建议将大型的内容分解成一系列较小的内容分别提交,以便于审核者理解、验证和支持您的贡献
审核代码
OpenCloudOS是一个开放社区,欢迎所有参与者都能成为活跃的审核者。
审核代码是项目和兴趣小组的 committer 或 maintainer 责任与权利,也是贡献者成为committer 或 maintainer 的考察指标之一。
审核者应严格遵循本社区的行为准则,本着实事求是、相互尊重、协作共赢的精神。代码审核时,可重点关注:
-
贡献背后的想法的合理性
-
贡献的架构是否正确
-
贡献是否完善
测试代码
测试是所有贡献者的责任。
贡献者在提交代码前应充分测试,以减少审核者以及后续系统打包、构建时的困难。在提交PR时,宜尽可能多的包括测试用例和测试结果。
代码之外的贡献
下面的列表旨在帮助非代码贡献者找到 OpenCloudOS 社区项目中可以利用代码之外的专业知识的领域。生机勃勃的OpenCloudOS社区不仅需要程序员的贡献,也需要社会各界方方面面的贡献和帮助。
社区生态工作
● 运维社区通信工具,包括联系主持社区会议等
● 共同组织社区聚会,包括OpenCloudOS开发者大会等,
● 管理社区“大事件”等,包括查看管理讨论中的事件
● 参与社区非产品文件的写作,包括但不限于社区推广、博客、视频主播等。
社区建设工作
● 社区网站设计与内容创造和管理
● 社区邮件列表monitor
特殊SIG贡献
文档资料
● 创建、维护、更新项目文档、教程、案例、demo
● 国际语言翻译
UX/UI设计 打包发布 项目管理
● 确认任务、问题等的所有权
● 管理PR,管理项目组分类和标签,编辑PR相关文本
● 为SIG等组织和帮助召开会议
开发者
● 代码仓:https://gitee.com/OpenCloudOS
● 软件包仓:https://gitee.com/src-opencloudos-rpms
● Stream仓:https://gitee.com/opencloudos-stream
● koji构建系统:https://build.opencloudos.tech/koji/