#!/bin/bash echo "=== Тест развертывания Dex Demo Application ===" echo # Проверка статуса подов echo "1. Статус подов:" ~/.kind-d8/kubectl get pods -n navigator-demo echo # Проверка DexAuthenticator echo "2. Статус DexAuthenticator:" ~/.kind-d8/kubectl get dexauthenticator -n navigator-demo echo # Проверка Ingress echo "3. Статус Ingress:" ~/.kind-d8/kubectl get ingress -n navigator-demo echo # Проверка логов backend echo "4. Логи Backend (последние 5 строк):" ~/.kind-d8/kubectl logs -n navigator-demo -l app=backend --tail=5 echo # Проверка доступности приложения echo "5. Тест доступности приложения:" echo "URL: https://navigator-demo.127.0.0.1.sslip.io" HTTP_STATUS=$(curl -k -s -o /dev/null -w "%{http_code}" https://navigator-demo.127.0.0.1.sslip.io) echo "HTTP Status: $HTTP_STATUS" if [ "$HTTP_STATUS" = "200" ]; then echo "✅ Frontend доступен!" elif [ "$HTTP_STATUS" = "302" ] || [ "$HTTP_STATUS" = "307" ]; then echo "✅ Frontend правильно требует аутентификации!" else echo "❌ Ошибка доступа к frontend" fi # Проверка API (должен требовать аутентификации) echo "6. Тест API endpoint:" echo "URL: https://navigator-demo.127.0.0.1.sslip.io/api/user-info" API_STATUS=$(curl -k -s -o /dev/null -w "%{http_code}" https://navigator-demo.127.0.0.1.sslip.io/api/user-info) echo "API Status: $API_STATUS" if [ "$API_STATUS" = "401" ] || [ "$API_STATUS" = "302" ] || [ "$API_STATUS" = "307" ]; then echo "✅ API правильно требует аутентификации!" elif [ "$API_STATUS" = "500" ]; then echo "⚠️ API возвращает 500 (возможно, проблема с DexAuthenticator)" else echo "❓ Неожиданный статус API: $API_STATUS" fi echo # Проверка health endpoint echo "6. Тест health endpoint:" ~/.kind-d8/kubectl exec -n navigator-demo deployment/backend -- curl -s http://localhost:8000/api/health echo echo echo "=== Инструкции по тестированию ===" echo "1. Откройте браузер и перейдите на https://navigator-demo.127.0.0.1.sslip.io" echo "2. Вас должно перенаправить на страницу аутентификации Dex" echo "3. После входа вы увидите информацию о пользователе и доступные ресурсы" echo echo "Тестовые пользователи (убедитесь, что они есть в вашем Dex):" echo "- admin@example.com (Иван Администраторов)" echo "- developer@example.com (Мария Разработчикова)" echo "- user@example.com (Петр Пользователев)" echo "- manager@example.com (Анна Менеджерова)"