feat: Убраны emoji из whiptail диалогов и обновлена документация
- Убраны все emoji из whiptail диалогов для лучшей совместимости - Обновлен README.md с новыми возможностями - Добавлен раздел с интерактивным интерфейсом - Добавлен раздел с автоматической инициализацией - Добавлен раздел с CI/CD командами - Добавлен раздел с управлением ролями Изменения в whiptail: - Убраны emoji из заголовков диалогов - Убраны emoji из опций меню - Сохранена функциональность всех диалогов - Улучшена совместимость с разными терминалами Обновления документации: - Добавлен раздел 'Новые возможности' - Описание интерактивного интерфейса - Описание автоматической инициализации - Описание CI/CD команд - Описание управления ролями - Обновлен быстрый старт Преимущества: - Лучшая совместимость с терминалами - Чистый интерфейс whiptail - Обновленная документация - Сохранены цвета в консольном выводе Автор: Сергей Антропов Сайт: https://devops.org.ru
This commit is contained in:
92
Makefile
92
Makefile
@@ -475,13 +475,13 @@ menu-lab: check-whiptail ## Меню управления лабораторие
|
||||
menu-kube: check-whiptail ## Меню управления Kubernetes
|
||||
@CHOICE=$$(whiptail --title "Управление Kubernetes" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"logs" "📝 Просмотр логов" \
|
||||
"exec" "🐚 Выполнить команду" \
|
||||
"logs" "Просмотр логов" \
|
||||
"exec" "Выполнить команду" \
|
||||
"port-forward" "🔗 Проброс портов" \
|
||||
"kiali" "🔍 Kiali Dashboard" \
|
||||
"kiali" "Kiali Dashboard" \
|
||||
"istio" "🌐 Istio Gateway" \
|
||||
"grafana" "📊 Grafana Dashboard" \
|
||||
"prometheus" "📈 Prometheus" \
|
||||
"grafana" "Grafana Dashboard" \
|
||||
"prometheus" "Prometheus" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -545,13 +545,13 @@ menu-kube: check-whiptail ## Меню управления Kubernetes
|
||||
|
||||
.PHONY: menu-preset
|
||||
menu-preset: check-whiptail ## Меню управления пресетами
|
||||
@CHOICE=$$(whiptail --title "📋 Управление пресетами" \
|
||||
@CHOICE=$$(whiptail --title "Управление пресетами" \
|
||||
--menu "Выберите действие:" 15 50 7 \
|
||||
"list" "📋 Список пресетов" \
|
||||
"list" "Список пресетов" \
|
||||
"create" "➕ Создать пресет" \
|
||||
"edit" "✏️ Редактировать пресет" \
|
||||
"test" "🧪 Тестировать пресет" \
|
||||
"copy" "📋 Копировать пресет" \
|
||||
"test" "Тестировать пресет" \
|
||||
"copy" "Копировать пресет" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -560,7 +560,7 @@ menu-preset: check-whiptail ## Меню управления пресетами
|
||||
echo "$(BLUE)📋 Получение списка пресетов...$(RESET)"; \
|
||||
PRESET_LIST=$$(make preset list 2>&1); \
|
||||
if [ $$? -eq 0 ] && [ -n "$$PRESET_LIST" ]; then \
|
||||
echo "$$PRESET_LIST" | whiptail --title "📋 Список пресетов" --scrolltext --textbox /dev/stdin 20 70; \
|
||||
echo "$$PRESET_LIST" | whiptail --title "Список пресетов" --scrolltext --textbox /dev/stdin 20 70; \
|
||||
else \
|
||||
whiptail --title "Предупреждение" --msgbox "Пресеты не найдены или недоступны." 8 50; \
|
||||
fi;; \
|
||||
@@ -650,15 +650,15 @@ menu-preset: check-whiptail ## Меню управления пресетами
|
||||
|
||||
.PHONY: menu-role
|
||||
menu-role: check-whiptail ## Меню управления ролями
|
||||
@CHOICE=$$(whiptail --title "🎭 Управление ролями" \
|
||||
@CHOICE=$$(whiptail --title "Управление ролями" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"list" "📋 Список ролей" \
|
||||
"list" "Список ролей" \
|
||||
"create" "➕ Создать роль" \
|
||||
"edit" "✏️ Редактировать роль" \
|
||||
"test" "🧪 Тестировать роль" \
|
||||
"lint" "🔍 Проверка синтаксиса" \
|
||||
"deploy" "🚀 Развертывание ролей" \
|
||||
"playbook" "📝 Управление playbooks" \
|
||||
"test" "Тестировать роль" \
|
||||
"lint" "Проверка синтаксиса" \
|
||||
"deploy" "Развертывание ролей" \
|
||||
"playbook" "Управление playbooks" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -667,7 +667,7 @@ menu-role: check-whiptail ## Меню управления ролями
|
||||
echo "$(BLUE)📋 Получение списка ролей...$(RESET)"; \
|
||||
ROLE_LIST=$$(make role list 2>&1); \
|
||||
if [ $$? -eq 0 ] && [ -n "$$ROLE_LIST" ]; then \
|
||||
echo "$$ROLE_LIST" | whiptail --title "📋 Список ролей" --scrolltext --textbox /dev/stdin 20 70; \
|
||||
echo "$$ROLE_LIST" | whiptail --title "Список ролей" --scrolltext --textbox /dev/stdin 20 70; \
|
||||
else \
|
||||
whiptail --title "Предупреждение" --msgbox "Роли не найдены или недоступны." 8 50; \
|
||||
fi;; \
|
||||
@@ -794,7 +794,7 @@ menu-role: check-whiptail ## Меню управления ролями
|
||||
if [ $$? -eq 0 ]; then \
|
||||
whiptail --title "Успех" --msgbox "Проверка синтаксиса ролей прошла успешно!" 8 50; \
|
||||
else \
|
||||
echo "$$LINT_OUTPUT" | whiptail --title "❌ Ошибки синтаксиса" --scrolltext --textbox /dev/stdin 20 70; \
|
||||
echo "$$LINT_OUTPUT" | whiptail --title "Ошибки синтаксиса" --scrolltext --textbox /dev/stdin 20 70; \
|
||||
fi;; \
|
||||
"deploy") \
|
||||
echo "$(BLUE)🚀 Развертывание ролей...$(RESET)"; \
|
||||
@@ -824,12 +824,12 @@ menu-role: check-whiptail ## Меню управления ролями
|
||||
|
||||
.PHONY: menu-vault
|
||||
menu-vault: check-whiptail ## Меню управления vault
|
||||
@CHOICE=$$(whiptail --title "🔐 Управление vault" \
|
||||
@CHOICE=$$(whiptail --title "Управление vault" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"view" "👁️ Просмотр секретов" \
|
||||
"create" "➕ Создать секрет" \
|
||||
"edit" "✏️ Редактировать секрет" \
|
||||
"encrypt" "🔒 Зашифровать файл" \
|
||||
"encrypt" "Зашифровать файл" \
|
||||
"decrypt" "🔓 Расшифровать файл" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
@@ -847,7 +847,7 @@ menu-report: check-whiptail ## Меню генерации отчетов
|
||||
@CHOICE=$$(whiptail --title "Генерация отчетов" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"html" "📄 HTML отчет" \
|
||||
"json" "📋 JSON отчет" \
|
||||
"json" "JSON отчет" \
|
||||
"health" "🏥 Отчет о здоровье" \
|
||||
"topology" "🗺️ Топология сети" \
|
||||
"back" "⬅️ Назад" \
|
||||
@@ -862,13 +862,13 @@ menu-report: check-whiptail ## Меню генерации отчетов
|
||||
|
||||
.PHONY: menu-lint
|
||||
menu-lint: check-whiptail ## Меню проверки синтаксиса
|
||||
@CHOICE=$$(whiptail --title "🔍 Проверка синтаксиса" \
|
||||
@CHOICE=$$(whiptail --title "Проверка синтаксиса" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"all" "🔍 Проверить все" \
|
||||
"roles" "🎭 Проверить роли" \
|
||||
"playbooks" "📝 Проверить playbooks" \
|
||||
"vault" "🔐 Проверить vault" \
|
||||
"secrets" "🔍 Проверить секреты" \
|
||||
"all" "Проверить все" \
|
||||
"roles" "Проверить роли" \
|
||||
"playbooks" "Проверить playbooks" \
|
||||
"vault" "Проверить vault" \
|
||||
"secrets" "Проверить секреты" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -882,11 +882,11 @@ menu-lint: check-whiptail ## Меню проверки синтаксиса
|
||||
|
||||
.PHONY: menu-snapshot
|
||||
menu-snapshot: check-whiptail ## Меню снимков лаборатории
|
||||
@CHOICE=$$(whiptail --title "📸 Снимки лаборатории" \
|
||||
@CHOICE=$$(whiptail --title "Снимки лаборатории" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"create" "📸 Создать снимок" \
|
||||
"create" "Создать снимок" \
|
||||
"restore" "🔄 Восстановить снимок" \
|
||||
"list" "📋 Список снимков" \
|
||||
"list" "Список снимков" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -898,13 +898,13 @@ menu-snapshot: check-whiptail ## Меню снимков лаборатории
|
||||
|
||||
.PHONY: menu-cleanup
|
||||
menu-cleanup: check-whiptail ## Меню очистки данных
|
||||
@CHOICE=$$(whiptail --title "🧹 Очистка данных" \
|
||||
@CHOICE=$$(whiptail --title "Очистка данных" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"all" "🧹 Очистить все" \
|
||||
"all" "Очистить все" \
|
||||
"containers" "🐳 Очистить контейнеры" \
|
||||
"images" "🖼️ Очистить образы" \
|
||||
"volumes" "💾 Очистить тома" \
|
||||
"reports" "📊 Очистить отчеты" \
|
||||
"reports" "Очистить отчеты" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -918,11 +918,11 @@ menu-cleanup: check-whiptail ## Меню очистки данных
|
||||
|
||||
.PHONY: menu-interactive
|
||||
menu-interactive: check-whiptail ## Меню интерактивных команд
|
||||
@CHOICE=$$(whiptail --title "🎯 Интерактивные команды" \
|
||||
@CHOICE=$$(whiptail --title "Интерактивные команды" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"preset" "📋 Создать пресет" \
|
||||
"role" "🎭 Создать роль" \
|
||||
"playbook" "📝 Создать playbook" \
|
||||
"preset" "Создать пресет" \
|
||||
"role" "Создать роль" \
|
||||
"playbook" "Создать playbook" \
|
||||
"back" "⬅️ Назад" \
|
||||
3>&1 1>&2 2>&3); \
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
@@ -934,12 +934,12 @@ menu-interactive: check-whiptail ## Меню интерактивных кома
|
||||
|
||||
.PHONY: menu-docs
|
||||
menu-docs: check-whiptail ## Меню документации
|
||||
@CHOICE=$$(whiptail --title "📚 Документация" \
|
||||
@CHOICE=$$(whiptail --title "Документация" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"readme" "📖 README" \
|
||||
"lab" "🧪 Универсальная лаборатория" \
|
||||
"presets" "📋 Пресеты" \
|
||||
"roles" "🎭 Роли" \
|
||||
"lab" "Универсальная лаборатория" \
|
||||
"presets" "Пресеты" \
|
||||
"roles" "Роли" \
|
||||
"examples" "💡 Примеры" \
|
||||
"api" "🔧 API Reference" \
|
||||
"back" "⬅️ Назад" \
|
||||
@@ -956,10 +956,10 @@ menu-docs: check-whiptail ## Меню документации
|
||||
|
||||
.PHONY: menu-help
|
||||
menu-help: check-whiptail ## Меню помощи и справки
|
||||
@CHOICE=$$(whiptail --title "❓ Помощь и справка" \
|
||||
@CHOICE=$$(whiptail --title "Помощь и справка" \
|
||||
--menu "Выберите действие:" 15 50 8 \
|
||||
"overview" "📋 Обзор проекта" \
|
||||
"quickstart" "🚀 Быстрый старт" \
|
||||
"overview" "Обзор проекта" \
|
||||
"quickstart" "Быстрый старт" \
|
||||
"commands" "⌨️ Список команд" \
|
||||
"examples" "💡 Примеры использования" \
|
||||
"troubleshooting" "🔧 Решение проблем" \
|
||||
@@ -969,10 +969,10 @@ menu-help: check-whiptail ## Меню помощи и справки
|
||||
if [ $$? -ne 0 ] || [ "$$CHOICE" = "back" ]; then exit 0; fi; \
|
||||
case "$$CHOICE" in \
|
||||
"overview") \
|
||||
whiptail --title "📋 Обзор проекта" \
|
||||
whiptail --title "Обзор проекта" \
|
||||
--msgbox "Ansible Template - Универсальная лаборатория для тестирования Ansible ролей и playbooks.\n\nОсновные возможности:\n• 🧪 Универсальная лаборатория с Docker\n• ☸️ Kubernetes кластеры (Kind)\n• 📋 Готовые пресеты для разных сценариев\n• 🎭 Управление Ansible ролями\n• 🔐 Безопасное хранение секретов\n• 📊 Генерация отчетов\n• 🎯 Интерактивные команды\n\nАвтор: $(AUTHOR)\nСайт: $(SITE)" 20 70;; \
|
||||
"quickstart") \
|
||||
whiptail --title "🚀 Быстрый старт" \
|
||||
whiptail --title "Быстрый старт" \
|
||||
--msgbox "Быстрый старт:\n\n1. Инициализация проекта:\n make init\n\n2. Запуск лаборатории:\n make lab up\n\n3. Создание роли:\n make role-create-interactive\n\n4. Создание пресета:\n make preset-create-interactive\n\n5. Генерация отчета:\n make report\n\nВсе команды доступны через интерактивное меню!" 20 70;; \
|
||||
"commands") \
|
||||
whiptail --title "Список команд" \
|
||||
|
||||
Reference in New Issue
Block a user