其他工具和程序
Ansible 社区使用各种工具来处理 Ansible 项目。以下列出了一些最流行的工具。
如果您知道应添加的任何其他工具,可以通过点击此页面右上角的“在 GitHub 上编辑”来更新此列表。
流行的编辑器
Emacs
一个免费的开源文本编辑器和 IDE,它支持自动缩进、语法高亮和内置的终端外壳(除此之外还有其他功能)。
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 的代码 linting 框架。
Pretty YAML - 美化 Sublime Text 2 和 3 中的 YAML。
Yamllint - Sublime 围绕 yamllint 的包装器。
vim
一个开源的免费命令行文本编辑器。有用的 vim 插件包括
Ansible vim - vim 语法插件,用于 Ansible 2.x,它支持 YAML 剧本、Jinja2 模板和 Ansible 的主机文件。
Ansible vim 和 neovim 插件 - vim 插件(lsp 客户端),用于 Ansible,它支持自动完成、语法高亮、悬停、诊断和跳转支持。
Visual Studio Code
一个开源的免费 GUI 文本编辑器,由 Microsoft 创建和维护。有用的 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 维护。
开发工具
验证剧本的工具
Ansible Lint - 用于 Ansible 剧本的高度可配置的 linter。
Ansible Review - 旨在进行代码审查的 Ansible Lint 的扩展。
Molecule - 用于 Ansible 剧本和角色的测试框架。
yamllint - 用于检查语法有效性的命令行实用程序,包括键重复和缩进问题。
其他工具
Ansible 清单绘图器 - 以图形方式显示清单继承层次结构以及在清单中定义变量的级别。
Ansible Shell - Ansible 的交互式外壳,内置了针对所有模块的选项卡自动完成功能。
Ansible Silo - 由 Docker 提供的自包含 Ansible 环境。
Ansigenome - 一个命令行工具,旨在帮助您管理 Ansible 角色。
antsibull-changelog - 用于 Ansible 集合的变更日志生成器。
antsibull-docs - 为集合生成 docsites 并可以验证集合文档。
ARA - ARA 记录 Ansible 剧本,并通过报告 API、UI 和 CLI 使其更易于理解和排除故障。
很棒的 Ansible - 一个协作整理的很棒的 Ansible 资源列表。
nanvault - 一个独立的工具,用于以 Ansible Vault 格式加密和解密文件,具有 UNIX 风格的可组合性。
OpsTools-ansible - 使用 Ansible 配置一个提供 OpsTools 支持的环境,即集中式日志记录和分析、可用性监控和性能监控。
ansibledb - 使用 MongoDB 存储 Ansible 报告和事实的 Flask API 服务器。除了不同的查询功能外,此工具还提供了一个 Web UI 用于查看 Ansible 报告、事实和日志。