其他工具和程序
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 的代码 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 文本编辑器,由微软创建和维护。有用的 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 的交互式 shell,具有对所有模块的内置制表符补全功能。
Ansible Silo - 由 Docker 创建的独立 Ansible 环境。
Ansigenome - 一种命令行工具,旨在帮助您管理 Ansible 角色。
antsibull-changelog - Ansible 集合的变更日志生成器。
antsibull-docs - 为集合生成 docsite,并可以验证集合文档。
ARA - ARA 记录 Ansible 剧本,并使用报告 API、UI 和 CLI 使它们更易于理解和排查。
很棒的 Ansible - 一份协作策划的令人惊叹的 Ansible 资源清单。
nanvault - 一个独立的工具,用于使用 Ansible Vault 格式加密和解密文件,具有 UNIX 风格的可组合性。
OpsTools-ansible - 使用 Ansible 配置一个环境,提供 OpsTools 的支持,即集中式日志记录和分析、可用性监控和性能监控。
ansibledb - Flask API 服务器,使用 MongoDB 存储 Ansible 报告和事实。除了不同的查询功能外,此工具还提供了一个 Web UI,用于查看 Ansible 报告、事实和日志。