Одновременный запуск и мониторинг работы в CLI Ansible tower

Мы установили Ansible Tower и внедрили инструменты CLI. Мы можем запускать задания в CLI, используя следующее -

tower-cli job launch -J 5

Это возвращает результат, как так -

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

И тогда мы можем контролировать статус, как это -

tower-cli job monitor 119,

Можно ли каким-то образом передать ввод идентификатора в аргумент монитора cli (или можно запустить оба одновременно)? Поскольку на сервере запущено несколько заданий, нам необходимо иметь возможность каждый раз надежно получать идентификатор задания.

Я ничего не видел об этом, когда перечитывал документацию по адресу http://tower-cli.readthedocs.io/en/latest/cli_ref/index.html.

Благодарю.

2 ответа

Решение

Я исправил это, выполнив следующее -

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

(Я добавляю --wait команда, когда я запускаю это в моей сборке CI, поэтому я включил ее выше)

Другие вопросы по тегам