- Переписан главный README.md с подробной навигацией - Создана структурированная документация в docs/: - getting-started.md - быстрый старт - creating-roles.md - создание ролей - cicd-setup.md - настройка CI/CD - monitoring.md - мониторинг и диагностика - site-yml-guide.md - руководство по site.yml - molecule-guide.md - подробное руководство по Molecule - Переписан dockerfiles/README.md с детальным описанием всех образов - Перенесен deploy.yml из корня в roles/ для лучшей организации - Обновлен site.yml для импорта roles/deploy.yml - Добавлены fallback значения в create.yml для надежности - Созданы скрипты автоматизации: - update-playbooks.sh - обновление playbook'ов - generate-role-docs.sh - генерация документации - setup-cicd.sh - настройка CI/CD - Добавлен env.example с примерами переменных - Обновлен Makefile с новыми командами автоматизации - Улучшена навигация по документации
59 lines
1.7 KiB
Bash
Executable File
59 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
||
# Автоматическое создание документации для новых ролей
|
||
# Автор: Сергей Антропов
|
||
# Сайт: https://devops.org.ru
|
||
|
||
set -euo pipefail
|
||
|
||
echo "📚 Генерация документации для ролей..."
|
||
|
||
# Получаем список всех ролей
|
||
ROLES=$(find roles/ -name 'main.yml' -path '*/tasks/*' | sed 's|roles/||; s|/tasks/main.yml||')
|
||
|
||
for role in $ROLES; do
|
||
echo "📝 Генерация документации для роли: $role"
|
||
|
||
# Создаем README.md для роли если его нет
|
||
if [ ! -f "roles/$role/README.md" ]; then
|
||
cat > "roles/$role/README.md" << EOF
|
||
# Роль $role
|
||
|
||
**Автор:** Сергей Антропов
|
||
**Сайт:** https://devops.org.ru
|
||
|
||
## Описание
|
||
|
||
Роль для настройки и конфигурации $role сервиса.
|
||
|
||
## Требования
|
||
|
||
- Ansible >= 2.9
|
||
- Поддерживаемые ОС: Ubuntu, Debian, RHEL, CentOS, AlmaLinux, Rocky Linux
|
||
|
||
## Переменные
|
||
|
||
| Переменная | Тип | По умолчанию | Описание |
|
||
|------------|-----|--------------|----------|
|
||
| \`${role}_enabled\` | boolean | \`true\` | Включить роль |
|
||
| \`${role}_packages\` | list | \`[]\` | Пакеты для установки |
|
||
|
||
## Примеры использования
|
||
|
||
\`\`\`yaml
|
||
- name: Настройка $role
|
||
hosts: all
|
||
roles:
|
||
- $role
|
||
\`\`\`
|
||
|
||
## Tags
|
||
|
||
- \`$role\` - выполнение всех задач роли
|
||
- \`install\` - установка пакетов
|
||
- \`config\` - настройка конфигурации
|
||
EOF
|
||
fi
|
||
done
|
||
|
||
echo "✅ Документация сгенерирована"
|