Files
DevOpsLab/roles/README.md
Sergey Antropoff a88c85d164 feat: Создана папка roles/ для Ansible ролей
- Создана папка roles/ с правильной структурой
- Добавлен .gitkeep для сохранения папки в git
- Создан README.md с документацией по работе с ролями
- Настроена структура для универсальных ролей

Структура папки roles:
- roles/.gitkeep - для сохранения папки в git
- roles/README.md - документация по работе с ролями

Документация в README.md:
- Инструкции по созданию ролей
- Структура универсальной роли
- Поддерживаемые ОС (RHEL и Debian семейства)
- Команды управления ролями
- Ссылки на подробную документацию

Преимущества:
- Четкая структура для ролей
- Документация по использованию
- Готовность к созданию ролей
- Сохранение папки в git
- Интеграция с make role командами

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-10-22 15:03:04 +03:00

2.7 KiB
Raw Blame History

Ansible Roles

Эта папка содержит Ansible роли для универсальной лаборатории.

Создание новой роли

# Интерактивное создание роли
make role create NAME=my-role

# Список ролей
make role list

# Управление playbooks роли
make role playbook NAME=my-role

Структура роли

roles/my-role/
├── tasks/
│   ├── main.yml          # Основные задачи (универсальные)
│   ├── debian.yml        # Задачи для Debian/Ubuntu
│   └── redhat.yml        # Задачи для RHEL/CentOS
├── handlers/
│   └── main.yml          # Обработчики
├── templates/             # Шаблоны Jinja2
├── files/                 # Статические файлы
├── vars/
│   └── main.yml          # Переменные роли
├── defaults/
│   └── main.yml          # Переменные по умолчанию
├── meta/
│   └── main.yml          # Метаданные роли
├── tests/                 # Тесты роли
└── playbooks/            # Playbooks роли
    └── deploy.yml
    └── install.yml

Универсальные роли

Все роли создаются универсальными для RHEL и Debian семейств:

  • tasks/main.yml - содержит общую логику и включает OS-специфичные задачи
  • tasks/debian.yml - задачи для Debian/Ubuntu (apt, systemd)
  • tasks/redhat.yml - задачи для RHEL/CentOS (yum, systemd)

Поддерживаемые ОС

  • Debian семейство: Ubuntu, Debian, Linux Mint
  • RHEL семейство: CentOS, RHEL, Rocky Linux, AlmaLinux

Команды управления

# Создать роль
make role create NAME=nginx

# Редактировать роль
make role edit NAME=nginx

# Тестировать роль
make role test NAME=nginx

# Проверить синтаксис
make role lint

# Развернуть роли
make role deploy

# Информация о роли
make role info NAME=nginx

# Управление playbooks
make role playbook NAME=nginx

Документация

Автор

Сергей Антропов
Сайт: https://devops.org.ru