- Удалена папка molecule/default (больше не используется) - Все скрипты в папке scripts теперь запускаются через Docker контейнер - Обновлены пути в скриптах для работы внутри контейнера: - snapshot.sh: OUT_DIR=/ansible/snapshots - restore.sh: IN_DIR=/ansible/snapshots - cleanup.sh: остался без изменений (уже корректный) Обновления в docker-compose.yaml: - Добавлены монтирования для scripts, reports, snapshots - Скрипты теперь доступны внутри контейнера по пути /ansible/scripts/ - Отчеты сохраняются в /ansible/reports/ - Снапшоты сохраняются в /ansible/snapshots/ Обновления в Makefile: - make snapshot теперь запускает: docker exec ansible-controller bash -lc 'bash /ansible/scripts/snapshot.sh' - make restore теперь запускает: docker exec ansible-controller bash -lc 'bash /ansible/scripts/restore.sh' - make cleanup теперь запускает: docker exec ansible-controller bash -lc 'bash /ansible/scripts/cleanup.sh' Преимущества: - Не требует установки дополнительных инструментов локально - Все операции выполняются в изолированной среде - Единообразный подход к запуску всех скриптов - Автоматическое создание необходимых директорий Обновлена документация: - README.md: добавлено упоминание о запуске через Docker - docs/api.md: обновлены примеры скриптов с путями для Docker Автор: Сергей Антропов Сайт: https://devops.org.ru
35 lines
1.1 KiB
YAML
35 lines
1.1 KiB
YAML
version: "3.9"
|
||
|
||
services:
|
||
ansible-controller:
|
||
image: quay.io/ansible/creator-ee:latest
|
||
container_name: ansible-controller
|
||
privileged: true
|
||
command: sleep infinity
|
||
environment:
|
||
DOCKER_HOST: unix:///var/run/docker.sock
|
||
ANSIBLE_VAULT_PASSWORD_FILE: /ansible/vault-password.txt
|
||
volumes:
|
||
- /var/run/docker.sock:/var/run/docker.sock
|
||
- ./molecule:/ansible/molecule
|
||
- ./files:/ansible/files
|
||
- ./scripts:/ansible/scripts
|
||
- ./reports:/ansible/reports
|
||
- ./snapshots:/ansible/snapshots
|
||
- ./vault-password.txt:/ansible/vault-password.txt
|
||
# каталог с ролями (локальный или внешний)
|
||
- ${ROLES_DIR:-./roles}:/ansible/roles:ro
|
||
working_dir: /ansible
|
||
|
||
# Обратная совместимость
|
||
# ansible:
|
||
# image: inecs/ansible:latest
|
||
# container_name: ansible
|
||
# volumes:
|
||
# - .:/ansible
|
||
# - /var/run/docker.sock:/var/run/docker.sock
|
||
# environment:
|
||
# - ANSIBLE_VAULT_PASSWORD_FILE=./vault-password.txt
|
||
# tty: true
|
||
# privileged: true
|
||
# working_dir: /ansible |