iac
dudefellah.iac
Это универсальная роль для установки и настройки (iac). Она установит некоторые пакеты для вашего дистрибутива, установит файлы на основе текста, который вы предоставите, и при необходимости перезапустит сервис на основе изменённых конфигурационных файлов.
Наверное, это не тот тип роли, который нравится всем, но я думаю, что она будет полезна для множества простых установок программного обеспечения, которые я делаю и которые, вероятно, не требуют создания полной роли для их управления.
Если вы используете эту роль для установки конфигурационных файлов, здесь есть несколько основных шаблонов для установки файлов .ini, .json и .yaml.
Требования
Нет.
Переменные роли
Переменные роли определены в комментариях в defaults/main.yml.
Зависимости
Нет.
Пример плейбука
Если вы хотите установить и настроить vdirsyncer для определённого пользователя (заметьте, что этот плейбук не тестировался, но должен дать представление о том, как это работает):
- hosts: all
tasks:
- name: Установить и настроить vdirsyncer
include_role:
name: dudefellah.iac
vars:
iac_user: bob
iac_group: bob
iac_packages:
- vdirsyncer
iac_handler_service_name: null
iac_handler_command: vdirsyncer sync
iac_config_files:
- path: .config/vdirsyncer/config
content: |
[general]
status_path = "~/.vdirsyncer/status"
...
Или установить polybar для вашей настройки x11. Проверяя ваш .ini файл с помощью validini:
- name: Установить и настроить polybar
include_role:
name: dudefellah.iac
vars:
iac_user: bob
iac_group: bob
iac_config_files:
- path: .config/polybar/config
src: iac.ini.j2
vars:
colors:
background: "#222"
background-alt: "#444"
...
validate: "validini %s"
Лицензия
GPLv2+
Информация об авторе
Дэн - github.com/dudefellah
ansible-galaxy install dudefellah/ansible-role-iac