在 Ansible tower CLI 中同时启动和监控作业

Launching and Monitoring a job at the same time in Ansible tower CLI

我们已经安装了 Ansible Tower 并实现了 CLI 工具。我们可以使用以下命令在 CLI 中启动作业 -

tower-cli job launch -J 5

这 returns 输出像这样 -

Resource changed.
=== ============ ======================== ======= ======= 
id  job_template         created          status  elapsed 
=== ============ ======================== ======= ======= 
119            5 2017-12-05T20:26:31.197Z pending 0.0
=== ============ ======================== ======= ======= 

然后我们可以像这样监控状态 -

tower-cli job monitor 119.

是否可以通过某种方式将 ID 输入传递到监视器 cli 参数中(或者是否可以同时 运行 两者)?由于我们在服务器上有多个作业 运行ning,因此我们每次都需要能够可靠地获取作业 ID。

当我阅读 http://tower-cli.readthedocs.io/en/latest/cli_ref/index.html 上的文档时,我没有看到任何关于此的信息。

谢谢。

我通过执行以下操作解决了这个问题 -

OUTPUT="$(tower-cli job launch -J 5 | grep -o '[0-9]*' | head -1 )"
tower-cli monitor $OUTPUT

我使用 tower-cli 版本 Tower CLI 3.3.0。我 运行 tower-cli job launch --help 给出了以下相关命令:

--monitor              If sent, immediately calls `job monitor` on the
                       newly launched job rather than exiting with a
                       success.
--wait                 Monitor the status of the job, but do not print
                       while job is in progress.

所以我认为您可以执行以下操作:

tower-cli job launch -J 5 --monitor

(我在 CI 构建中 运行 时添加了 --wait 命令,这就是我在上面包含它的原因)