获取SCM分支/标签名称作为剧本变量

时间:2020-10-21 16:51:10

标签: ansible-awx ansible-tower

我有一本剧本,需要在运行时使用其自己的版本来部署各种配置。 今天,我使用了一个脚本,该脚本带有一个version参数,然后git clone / checkout到该版本,最后使用-e project_version=$version调用ansible-playbook。

这很好,但现在我想改用AWX。

启动作业时有“ SCM分支”参数,但在运行Playbook时似乎没有显示。

有适当的方法吗?

以下是我可能想到的(丑陋)解决方法:

  • 启动AWX作业时手动添加project_version额外变量(因此版本必须每次输入两次)
  • 更改剧本以在运行时检索git标记/分支/提交标签(这不是那么简单,因为AWX不能正确进行git克隆)
  • 通过检出一个中间项目来绕过AWX(更接近我现有的脚本)

1 个答案:

答案 0 :(得分:0)

如果您想知道提交编号,可以在AWX中使用变量awx_project_revision,在Ansible Tower中使用变量tower_project_revision。运行模板时,这些变量会自动添加到作业环境中。