Проверять стек докеров через ansible

Я хочу использовать ansible, чтобы узнать, развернут ли стек докеров. В оболочке я бы сделал что-то вроде: docker stack services -q my_stack_name .

Я мог бы использовать модуль shell , но тогда мне придется вручную обрабатывать ошибки и идемпотентность.

Есть ли модуль для этого? (Я просмотрел документы docker_swarm_info , но это не подходит.)

0
задан 7 October 2019 в 23:14
1 ответ

Вы можете предоставить локальный факт, который предоставляет эту информацию.

#!/bin/sh
# /etc/ansible/facts.d/docker_stack
echo "{\"info\": \"`docker stack services -q my_stack_name`\"}"

В своей игровой книге вы можете использовать asible_local. docker_stack.info переменная.

(Конечно, скорее всего, будет более эффективным сделать это Python скрипт, который возвращает структурированные JSON данные, а не ошибочную, возможно, многострочную строку.)

Обратите внимание, что это не заметит никаких изменений, которые произойдут во время выполнения плейбука.

.
1
ответ дан 4 December 2019 в 15:36

Теги

Похожие вопросы