diff --git a/Makefile b/Makefile index c3dddfe..a3698d2 100644 --- a/Makefile +++ b/Makefile @@ -92,9 +92,18 @@ role: fi;; \ *) \ echo "🎯 Доступные команды:"; \ - echo " make role test [preset] - протестировать роли"; \ - echo " make role deploy - развернуть роли"; \ - echo " make role lint - проверить синтаксис";; \ + echo ""; \ + echo " 🚀 make role test [preset] - протестировать роли с preset'ом"; \ + echo " 💡 Примеры:"; \ + echo " make role test # с default preset"; \ + echo " make role test minimal # с minimal preset"; \ + echo " make role test etcd-patroni # с etcd-patroni preset"; \ + echo ""; \ + echo " 🚀 make role deploy - развернуть роли на реальные серверы"; \ + echo " 💡 Требует: inventory/hosts.ini"; \ + echo ""; \ + echo " 🔍 make role lint - проверить синтаксис ролей"; \ + echo " 💡 Использует: ansible-lint";; \ esac # ============================================================================= @@ -166,14 +175,22 @@ presets: *) \ echo "🎯 Доступные команды:"; \ echo ""; \ - echo " 📋 make presets list - показать список preset'ов"; \ - echo " 📄 make presets info - информация о preset'е"; \ - echo " 🚀 make presets test - тест с preset'ом"; \ + echo " 📋 make presets list - показать список всех preset'ов"; \ + echo " 💡 Показывает: название, описание, количество хостов"; \ + echo ""; \ + echo " 📄 make presets info - подробная информация о preset'е"; \ + echo " 💡 Показывает: описание, хосты, сеть, образы"; \ + echo " 💡 Требует: PRESET=имя_пресета"; \ + echo ""; \ + echo " 🚀 make presets test - запустить тест с preset'ом"; \ + echo " 💡 Запускает: molecule test с выбранным preset'ом"; \ + echo " 💡 Требует: PRESET=имя_пресета"; \ echo ""; \ echo "💡 Примеры:"; \ - echo " make presets list"; \ - echo " make presets info PRESET=etcd-patroni"; \ - echo " make presets test PRESET=etcd-patroni";; \ + echo " make presets list # показать все preset'ы"; \ + echo " make presets info PRESET=etcd-patroni # информация о etcd-patroni"; \ + echo " make presets test PRESET=minimal # тест с minimal preset"; \ + echo " make presets test PRESET=performance # тест с performance preset";; \ esac # ============================================================================= @@ -272,15 +289,33 @@ vault: echo " - Регулярно проверяйте файлы на наличие секретов";; \ *) \ echo "🎯 Доступные команды:"; \ - echo " make vault create - создать файл секретов"; \ - echo " make vault edit - редактировать секреты"; \ - echo " make vault show - показать секреты"; \ - echo " make vault delete - удалить секреты"; \ - echo " make vault encrypt - зашифровать файл"; \ - echo " make vault decrypt - расшифровать файл"; \ - echo " make vault rekey - сменить пароль"; \ - echo " make vault check - проверка vault файлов"; \ - echo " make vault scan - поиск секретов";; \ + echo ""; \ + echo " 🔐 make vault create - создать новый файл секретов"; \ + echo " 💡 Интерактивное создание зашифрованного файла"; \ + echo ""; \ + echo " ✏️ make vault edit - редактировать существующие секреты"; \ + echo " 💡 Открывает редактор для изменения секретов"; \ + echo ""; \ + echo " 👁️ make vault show - показать содержимое секретов"; \ + echo " 💡 Расшифровывает и показывает содержимое"; \ + echo ""; \ + echo " 🗑️ make vault delete - удалить файл секретов"; \ + echo " 💡 Безвозвратное удаление файла"; \ + echo ""; \ + echo " 🔒 make vault encrypt - зашифровать существующий файл"; \ + echo " 💡 Шифрует незашифрованный файл"; \ + echo ""; \ + echo " 🔓 make vault decrypt - расшифровать файл"; \ + echo " 💡 Создает незашифрованную копию"; \ + echo ""; \ + echo " 🔑 make vault rekey - сменить пароль шифрования"; \ + echo " 💡 Изменяет пароль для существующего файла"; \ + echo ""; \ + echo " ✅ make vault check - проверить vault файлы"; \ + echo " 💡 Проверяет структуру и статус файлов"; \ + echo ""; \ + echo " 🔍 make vault scan - поиск потенциальных секретов"; \ + echo " 💡 Сканирует проект на наличие незашифрованных секретов";; \ esac # ============================================================================= @@ -303,9 +338,16 @@ git: echo "✅ Ветка '$$BRANCH' создана";; \ *) \ echo "🎯 Доступные команды:"; \ - echo " make git push - запушить изменения"; \ - echo " make git pull - получить изменения"; \ - echo " make git new - создать новую ветку";; \ + echo ""; \ + echo " 📤 make git push - отправить изменения в репозиторий"; \ + echo " 💡 Выполняет: git add . && git commit && git push"; \ + echo ""; \ + echo " 📥 make git pull - получить изменения из репозитория"; \ + echo " 💡 Выполняет: git pull origin main"; \ + echo ""; \ + echo " 🌿 make git new - создать новую ветку"; \ + echo " 💡 Интерактивно запрашивает имя ветки"; \ + echo " 💡 Выполняет: git checkout -b имя_ветки";; \ esac # ============================================================================= @@ -368,13 +410,33 @@ docker-cmd: *) \ echo "🎯 Доступные команды:"; \ echo ""; \ - echo " 🔧 make docker prepare - подготовка к работе с Docker Hub"; \ - echo " 🐳 make docker build - собрать все образы"; \ - echo " 📤 make docker push - отправить образы в Docker Hub"; \ - echo " 📥 make docker pull - загрузить образы из Docker Hub"; \ - echo " 🧹 make docker clean - удалить образы"; \ - echo " 📊 make docker info - информация об образах"; \ - echo " 🔄 make docker update - обновить все образы (pull + build + push)";; \ + echo " 🔧 make docker-cmd prepare - подготовка к работе с Docker Hub"; \ + echo " 💡 Показывает: registry, version, список образов"; \ + echo " 💡 Рекомендует: docker login перед работой"; \ + echo ""; \ + echo " 🐳 make docker-cmd build - собрать все Docker образы"; \ + echo " 💡 Собирает: ansible-controller, alt-linux, astra-linux, redos"; \ + echo " 💡 Собирает: rhel, centos, alma, rocky"; \ + echo " 💡 Тегирует: inecs/образ:latest"; \ + echo ""; \ + echo " 📤 make docker-cmd push - отправить образы в Docker Hub"; \ + echo " 💡 Требует: docker login"; \ + echo " 💡 Отправляет: все образы в registry inecs"; \ + echo ""; \ + echo " 📥 make docker-cmd pull - загрузить образы из Docker Hub"; \ + echo " 💡 Загружает: все образы из registry inecs"; \ + echo " 💡 Пропускает: отсутствующие образы"; \ + echo ""; \ + echo " 🧹 make docker-cmd clean - удалить локальные образы"; \ + echo " 💡 Удаляет: все образы inecs/*:latest"; \ + echo " 💡 Безопасно: игнорирует ошибки"; \ + echo ""; \ + echo " 📊 make docker-cmd info - информация о собранных образах"; \ + echo " 💡 Показывает: размер, дата создания, теги"; \ + echo ""; \ + echo " 🔄 make docker-cmd update - обновить все образы"; \ + echo " 💡 Выполняет: pull + build + push"; \ + echo " 💡 Полный цикл обновления";; \ esac # ============================================================================= @@ -398,8 +460,16 @@ controller: echo "🎯 Доступные команды:"; \ echo ""; \ echo " 🔨 make controller build - собрать ansible-controller"; \ + echo " 💡 Собирает: inecs/ansible-controller:latest"; \ + echo " 💡 Использует: dockerfiles/ansible-controller/Dockerfile"; \ + echo ""; \ echo " 🚀 make controller run - запустить ansible-controller"; \ - echo " 🛑 make controller stop - остановить ansible-controller";; \ + echo " 💡 Запускает: docker-compose up -d"; \ + echo " 💡 Использует: dockerfiles/ansible-controller/docker-compose.yml"; \ + echo ""; \ + echo " 🛑 make controller stop - остановить ansible-controller"; \ + echo " 💡 Останавливает: docker-compose down"; \ + echo " 💡 Удаляет: контейнеры и сети";; \ esac # ============================================================================= @@ -417,24 +487,54 @@ help: @echo " molecule/default/ - Molecule конфигурация" @echo " roles/ - Ansible роли" @echo " vault/ - Зашифрованные секреты" + @echo " dockerfiles/ - Docker образы для тестирования" @echo "" @echo "🚀 ОСНОВНЫЕ КОМАНДЫ:" - @echo " make role test [preset] - протестировать роли" - @echo " make role deploy - развернуть роли" - @echo " make role lint - проверить синтаксис" + @echo " make role test [preset] - протестировать роли с preset'ом" + @echo " make role deploy - развернуть роли на реальные серверы" + @echo " make role lint - проверить синтаксис ролей" @echo "" - @echo "📋 PRESET'Ы:" - @echo " make presets list - показать все preset'ы" - @echo " make presets test - тест с preset'ом" + @echo "📋 PRESET'Ы (тестовые окружения):" + @echo " make presets list - показать все доступные preset'ы" + @echo " make presets info - подробная информация о preset'е" + @echo " make presets test - запустить тест с preset'ом" @echo "" - @echo "🐳 DOCKER:" - @echo " make docker-cmd build - собрать образы" - @echo " make docker-cmd push - отправить в Docker Hub" - @echo " make docker-cmd info - информация об образах" + @echo "🐳 DOCKER ОБРАЗЫ:" + @echo " make docker-cmd prepare - подготовка к работе с Docker Hub" + @echo " make docker-cmd build - собрать все Docker образы" + @echo " make docker-cmd push - отправить образы в Docker Hub" + @echo " make docker-cmd pull - загрузить образы из Docker Hub" + @echo " make docker-cmd clean - удалить локальные образы" + @echo " make docker-cmd info - информация о собранных образах" + @echo " make docker-cmd update - обновить все образы (pull + build + push)" @echo "" - @echo "🔐 VAULT:" - @echo " make vault create - создать файл секретов" - @echo " make vault check - проверка vault файлов" + @echo "🔐 VAULT (управление секретами):" + @echo " make vault create - создать новый файл секретов" + @echo " make vault edit - редактировать существующие секреты" + @echo " make vault show - показать содержимое секретов" + @echo " make vault delete - удалить файл секретов" + @echo " make vault encrypt - зашифровать файл" + @echo " make vault decrypt - расшифровать файл" + @echo " make vault rekey - сменить пароль шифрования" + @echo " make vault check - проверить vault файлы" + @echo " make vault scan - поиск потенциальных секретов" + @echo "" + @echo "🌿 GIT (управление версиями):" + @echo " make git push - отправить изменения в репозиторий" + @echo " make git pull - получить изменения из репозитория" + @echo " make git new - создать новую ветку" + @echo "" + @echo "🎮 CONTROLLER (ansible-controller):" + @echo " make controller build - собрать ansible-controller" + @echo " make controller run - запустить ansible-controller" + @echo " make controller stop - остановить ansible-controller" + @echo "" + @echo "💡 ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ:" + @echo " make presets list # показать все preset'ы" + @echo " make presets test PRESET=etcd-patroni # тест с etcd-patroni" + @echo " make role test minimal # быстрый тест" + @echo " make docker-cmd build # собрать все образы" + @echo " make vault create # создать секреты" @echo "" @echo "📖 Подробная справка: make [команда]" @echo "=========================================="