其他工具和程序
Ansible 社区使用一系列工具来处理 Ansible 项目。这是一个列出其中一些最流行的工具的列表。
如果您知道应添加的其他工具,可以通过点击此页面右上角的“在 GitHub 上编辑”来更新此列表。
常用编辑器
Emacs
一个免费的开源文本编辑器和 IDE,支持自动缩进、语法高亮显示和内置终端 shell(以及其他功能)。
yaml-mode - YAML 高亮显示和语法检查。
jinja2-mode - Jinja2 高亮显示和语法检查。
magit-mode - Emacs 中的 Git porcelain。
lsp-mode - Ansible 语法高亮显示、自动完成和诊断。
PyCharm
一个用于 Python 软件开发的完整 IDE。它附带了编写 Python 脚本和应用程序所需的一切,包括对 YAML 语法高亮显示的支持。如果您编写模块并提交 Ansible 代码,它可能是一个非常有用的工具。可用于调试 ansible-core
。有关更多信息,请参阅 PyCharm。有用的插件包括
Ansible Lint - Ansible Lint 集成,在编辑时自动/持续注释错误、警告和信息。
Ansible Vault 集成 - 将 Ansible Vault 直接集成到 IntelliJ IDEA 中,并提供用于保管和取消保管秘密的上下文操作。
Sublime
一个闭源的、订阅式 GUI 文本编辑器。您可以使用主题自定义 GUI,并安装语言高亮显示和其他改进的包。您可以在 Linux、macOS 和 Windows 上安装 Sublime。有用的 Sublime 插件包括
GitGutter - 显示有关 Git 存储库中文件的信息。
SideBarEnhancements - 提供对文件和文件夹侧边栏操作的增强。
Sublime Linter - Sublime Text 3 的代码静态检查框架。
Pretty YAML - 美化 Sublime Text 2 和 3 的 YAML。
Yamllint - Sublime 围绕 yamllint 的包装器。
vim
一个开源的、免费的命令行文本编辑器。有用的 vim 插件包括
Ansible vim - Ansible 2.x 的 vim 语法插件,它支持 YAML playbook、Jinja2 模板和 Ansible 的主机文件。
Ansible vim 和 neovim 插件 - Ansible 的 vim 插件(lsp 客户端),它支持自动完成、语法高亮显示、悬停、诊断和跳转支持。
Visual Studio Code
一个由 Microsoft 创建和维护的开源、免费的 GUI 文本编辑器。有用的 Visual Studio Code 插件包括
Red Hat 的 Ansible 扩展 - 提供自动完成、语法高亮显示、悬停、诊断、跳转支持以及用于本地和执行环境设置运行 ansible-playbook 和 ansible-navigator 工具的命令。
Red Hat 的 YAML 支持 - 通过 yaml-language-server 提供 YAML 支持,并内置 Kubernetes 和 Kedge 语法支持。
注意
Visual Studio Code Ansible 扩展由 Ansible 社区和 Red Hat 维护。
开发工具
用于验证 playbook 的工具
Ansible Lint - 一个高度可配置的 Ansible playbook 静态检查工具。
Ansible Review - Ansible Lint 的扩展,专为代码审查而设计。
Molecule - Ansible playbook 和角色的测试框架。
yamllint - 一个命令行实用程序,用于检查语法有效性,包括重复键和缩进问题。
其他工具
Ansible 清单图形化工具 - 以图形方式显示清单继承层次结构以及在清单中定义变量的级别。
Ansible Silo - Docker 的一个自包含 Ansible 环境。
Ansigenome - 一个命令行工具,旨在帮助您管理 Ansible 角色。
antsibull-changelog - Ansible 集合的变更日志生成器。
antsibull-docs - 为集合生成文档站点,并可以验证集合文档。
ARA - ARA 记录 Ansible playbook,并通过报告 API、UI 和 CLI 使它们更容易理解和故障排除。
Awesome Ansible - 一个协作策划的 Ansible 资源列表。
nanvault - 一个独立的工具,用于以 Ansible Vault 格式加密和解密文件,具有 UNIX 风格的可组合性。
OpsTools-ansible - 使用 Ansible 配置一个提供 OpsTools 支持的环境,即集中式日志记录和分析、可用性监控和性能监控。
ansibledb - 一个 Flask API 服务器,它使用 MongoDB 存储 Ansible 报告和事实。除了不同的查询功能外,此工具还提供了一个 Web UI 用于查看 Ansible 报告、事实和日志。