touchstone

Touchstone

Ansible Galaxy включен ролевая задача, которая позволяет легко сделать наборы плейбуков, ролей или задач идемпотентными. Это критически важно для некоторых последовательностей. Например, если одна роль занимается разбиением, а другая — форматированием. Повторное применение этой последовательности в будущем может привести к потере данных.

Требования

Такие же, как у стандартного Ansible 2.3+.

Переменные ролей

touch_touchstone:

Когда установлено в true, отмечает конечное состояние или выполнение, обозначенное stone_name.

stone_name:

Опционально, строка идентификации, используемая для отслеживания нескольких конечных состояний. Например, для нескольких плейбуков. По умолчанию .touchstone.

touchstone_filepath:

Опционально, путь к директории, где будет проверяться или записываться touchstone. Должен быть постоянной и записываемой директорией для ansible_user, т.е. не временной директорией /tmp. В этой директории будет создана/проверена блокировка, независимо от того, касается ли touchstone.

stone_touched:

Логическое значение, устанавливаемое в процессе работы роли и отражающее текущее состояние touchstone. Когда True, это указывает на то, что камень был затронут хотя бы один раз в прошлом.

touchstone_template:

Опционально, полный путь к шаблону jinja2, используемому для генерации содержимого файла touchstone.

Зависимости

Машина на базе systemd с уникальным /etc/machine-id.

Пример плейбука

- хосты: все
  роли:
     - роль: cevich.touchstone

     - роль: что-то
       когда: не stone_touched

     - роль: еще_что-то
       когда: не stone_touched

     - роль: финальная_вещь
       когда: не stone_touched

     - роль: cevich.touchstone
       touch_touchstone: True

Лицензия

Легко сделать наборы плейбуков, ролей или задач идемпотентными. Авторские права (C) 2017 Кристофер С. Эвич.

Эта программа является свободным программным обеспечением: вы можете распространять и/или изменять её на условиях GNU General Public License, публикуемой Фондом свободного программного обеспечения, либо версии 3 Лицензии, либо (по вашему выбору) любой более поздней версии.

Эта программа распространяется в надежде, что она будет полезной, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии товарного вида или пригодности для конкретной цели. См. GNU General Public License для получения дополнительных сведений.

Вы должны были получить копию GNU General Public License вместе с этой программой. Если нет, смотрите https://www.gnu.org/licenses/.

Информация об авторе

Создает проблемы и вызывает хаос с Linux с тех пор, как Windows 98.

Непрерывная интеграция

Travis CI: Статус сборки

О проекте

Easily make sets of plays, roles or tasks idempotent.

Установить
ansible-galaxy install cevich/touchstone
Лицензия
gpl-3.0
Загрузки
524
Владелец
Hacking on Linux since Windows 98