1.5 KiB
1.5 KiB
ansible-roles
Канон общих Ansible-ролей для изолированных серверных репозиториев
(pet-project-server, buckland, …).
Это рабочая директория-канон, а не сервис. Серверные репозитории
держат закоммиченные копии ролей в своём roles/ и синхронизируются с
этим каноном через invoke-задачи (rsync, git здесь не участвует):
inv roles-pull [-- <role>]— канон → репозиторий;inv roles-push [-- <role>]— репозиторий → канон (с подтверждением при расхождении);inv roles-status— сравнить подписанные роли с каноном.
Каждый репозиторий объявляет подписку в своём tasks.py
(SYNCED_ROLES). «Пином версии» служит сама закоммиченная копия в
репозитории: деплоится ровно то, что лежит в его git.
Git в этой директории — опциональный бэкап истории канона, он не стоит в рабочей петле синхронизации.
Спецификация подхода: pet-project-server/docs/drafts/shared-roles-sync.md.
Роли
eget— установка утилиты eget.