贡献给 Ansible 托管的集合
Ansible 团队欢迎社区为 Red Hat Ansible 工程团队维护的集合做出贡献。本节描述了如何在您的 PR 合并之前打开问题并创建具有所需测试的 PR。
Ansible 托管的集合
下表显示
**Ansible 托管的集合** - 点击 Galaxy 上集合的链接,然后点击 Galaxy 中的
repo
按钮以查找此集合的 GitHub 存储库。**相关的社区集合** - 包含社区创建的内容(模块、角色等)的集合,这些内容也可能对 Ansible 托管集合的用户感兴趣。例如,您可以在内容移至 Ansible 托管集合之前,将新模块添加到社区集合作为技术预览。
**赞助商** - 管理集合的工作组。您可以加入会议,讨论对集合的重要拟议更改和增强功能。
**测试要求** - Ansible 托管集合的任何新内容或更改内容所需的测试。
**开发者详细信息** - 描述 Ansible 托管的集合是否接受现有集合内容(插件、角色等)的直接社区问题和 PR,以及基于集合类型的更具体的开发者指南。
注意
* **接受 PR** 下的 ✓ 表示该集合欢迎针对现有集合内容(插件、角色等)的任何更改的 GitHub 问题和 PR。
** AWS 集合需要集成测试,并欢迎但不要求单元测试。如果由于外部要求在逻辑上不可行进行集成测试,则对此例外。AWS Direct Connect就是一个例子,因为此服务在没有建立网络对等连接的情况下无法进行功能测试。因此,与 AWS Direct Connect 交互的模块需要单元测试。对 amazon.aws
的例外必须由 Red Hat 批准,对 community.aws
的例外必须由 AWS 社区批准。
*** ansible.netcommon
包含启用许多网络和安全 平台 集合的所有基础组件。它包含所有必需的连接和过滤器插件,并在您安装平台集合时作为依赖项安装。
**** Windows PowerShell 模块的单元测试是测试的例外,但单元测试对于集合的其余部分(包括 Ansible 端插件)仍然有效且必需。
决定您的贡献属于哪里
我们欢迎对 Ansible 托管的集合做出贡献。因为这些集合是下游支持的 Red Hat 产品的一部分,所以贡献、测试和发布的标准可能高于其他社区集合。相关的社区集合(例如 community.general
和 community.network
)的要求不太严格,是新功能的理想场所,这些新功能可能会在将来的版本中成为 Ansible 托管集合的一部分。
以下场景使用 arista.eos
来帮助解释何时为 Ansible 托管的集合做出贡献,以及何时将您的更改或想法建议给相关的社区集合
您想修复
arista.eos
Ansible 托管集合中的问题。直接在 arista.eos 集合 GitHub 存储库 中创建 PR。应用所有 合并要求。您想为 Arista 添加一个新的 Ansible 模块。您的选择如下所示:
在
arista.eos
集合中提出一个新模块(需要 Arista 和 Red Hat 的批准)。在
arista
命名空间中提出一个新的集合(需要 Arista 和 Red Hat 的批准)。在
community.network
集合中提出一个新模块(需要网络社区的批准)。将您的新模块放在您自己命名空间中的集合中(无需批准)。
大多数新内容应该首先进入相关的社区集合或您自己的集合,以便在您可以建议将其添加到 arista
命名空间之前在社区中建立良好的基础,在该命名空间中,包含和维护标准要高得多。
合并您的 PR 的要求
在您的 PR 可以合并到 Ansible 托管的集合之前,必须满足以下要求:
PR 位于集合的预期范围内。与 Ansible 托管集合表 中列出的相应 Ansible 赞助商联系以寻求帮助。
对于网络和安全领域,PR 遵循 资源模块开发原则。
通过 健全性测试和 tox。
通过单元测试和集成测试,如 Ansible 托管集合表 中列出并在 资源模块集成测试 中描述的那样。
遵循 Ansible 指南。请参阅 您是否应该开发一个模块? 和 开发集合。
解决所有审查意见。
包含适当的 变更日志。