开发者指南
注意
让开源更具包容性
Red Hat 致力于替换代码、文档和网络资源中存在问题的语言。我们首先从这四个术语开始:master(主)、slave(从)、blacklist(黑名单)和 whitelist(白名单)。如果您发现我们遗漏了某个术语,请提交 issue 或 pull request。欲了解更多详情,请参阅我们的 CTO Chris Wright 的信息。
欢迎使用 Ansible 开发者指南!
谁应该使用本指南?
如果您想通过在本地使用自定义模块或插件来扩展 Ansible、创建模块或插件、为现有模块添加功能,或者扩大测试覆盖范围,那么本指南将为您提供帮助。我们为开发者提供了关于如何测试和编写模块文档的详细信息,以及将您的模块或插件提交至 Ansible 主仓库的前提条件。
请寻找最能描述您想要执行的任务的项
我想寻找一种解决特定用例的方法
我想 在本地添加自定义插件或模块。
我想确定对于我的用例,开发模块是否是正确的方法。
我想 开发一个 Collection。
我已经阅读了上述信息,并确定我想开发一个模块
在开始编码之前我需要了解什么?
我想 搭建我的 Python 开发环境。
我想 开始编写模块。
- 我想编写特定类型的模块
一个 网络模块
一个 Windows 模块。
一个 Amazon 模块。
一个 oVirt/RHV 模块。
一个 VMware 模块。
我想 编写一系列相关的模块,将 Ansible 与新产品(例如数据库、云提供商、网络平台等)集成。
我想优化我的代码
我想 调试我的模块代码。
我想 添加测试。
我想 为我的模块编写文档。
我想 为我的一套网络平台模块编写文档。
我想遵循 编写简洁、可用模块代码的约定和技巧。
我想参与其他开发项目
我想回馈 Ansible 项目
我想 贡献我的模块或插件。
我想 了解 DCO 协议,以便向 Ansible Core 和 Ansible Documentation 仓库提交贡献。
如果您希望阅读完整指南,以下是按顺序排列的页面列表。
- 在本地添加模块和插件
- 您应该开发模块吗?
- 开发模块
- 将您的模块贡献给现有的 Ansible 集合
- 约定、技巧和常见陷阱
- Ansible 和 Python 3
- 调试模块
- 模块格式和文档
- Ansible 标记
- 相邻的 YAML 文档文件
- Windows 模块开发演练
- 创建新集合
- 测试 Ansible
- Ansible 模块或插件的生命周期
- 开发插件
- 开发动态主机清单
- 开发
ansible-core - Ansible 模块架构
- Python API
- 变基(Rebase)拉取请求
- 使用和开发模块实用程序
- Ansible 集合创建者路径
- 开发集合
- 将角色迁移到 Galaxy 集合中的角色
- 集合 Galaxy 元数据结构
- Ansible 架构