基于Linux的企业自动化实践:服务器的构建、部署与管理
上QQ阅读APP看书,第一时间看更新

3.2.3 AWX支持版本控制

在企业场景中,个人在本机存储剧本可能是一个有待解决的问题。例如,如果用户A用一个关键修复程序更新了一个剧本,那么如何确保用户B能够访问该代码呢?理想情况下,代码应该存储在版本控制系统(例如GitHub)中,并且每次运行都会更新本机副本。

良好的流程是Linux企业级自动化的一个重要组成部分,虽然用户B在运行本机的剧本之前应该先更新它们,但是你不能强制他这样做。同样,AWX允许从版本控制存储库中获取剧本,并自动更新AWX服务器上的剧本的本机副本,从而解决了这个问题。

尽管AWX可以帮助你,特别是能确保你从存储库中提取最新版本的代码,但它不能帮助你处理其他错误行为,例如某人没有在第一时间提交他的代码。然而,强制将AWX用于Ansible剧本运行的意图是,任何对剧本进行更改的人都必须提交它们,以便AWX运行它们。对AWX服务器的本机访问应该严格限制,以防止人们在本机文件系统上进行代码更改,这样,你就可以确信每个人都在积极有效地使用版本控制系统。

这些更新可以是事件驱动的,因此,每次运行来自该存储库的剧本时都可以更新本机剧本。也可以根据AWX管理员的决定定期或手动更新。

AWX也可以帮助你实现自动化的安全性。我们将在下一节中通过研究AWX中的凭据管理来探讨这一点。