Files
unionflow-mobile-apps/scripts/check-keycloak-state.ps1
dahoud d094d6db9c Initial commit: unionflow-mobile-apps
Application Flutter complète (sans build artifacts).

Signed-off-by: lions dev Team
2026-03-15 16:30:08 +00:00

87 lines
3.1 KiB
PowerShell

# Script pour vérifier l'état de Keycloak (realm unionflow)
# Usage: .\check-keycloak-state.ps1
Write-Host "=== Vérification Keycloak ===" -ForegroundColor Cyan
Write-Host ""
try {
# Test connexion Keycloak
$testUrl = Invoke-WebRequest -Uri 'http://localhost:8180' -UseBasicParsing -Method Get
Write-Host "[OK] Keycloak accessible" -ForegroundColor Green
} catch {
Write-Host "[ERREUR] Keycloak non accessible sur http://localhost:8180" -ForegroundColor Red
Write-Host "Démarrer avec: docker-compose up -d keycloak" -ForegroundColor Yellow
exit 1
}
# Obtenir le token admin
try {
$tokenResponse = Invoke-RestMethod -Method Post `
-Uri 'http://localhost:8180/realms/master/protocol/openid-connect/token' `
-ContentType 'application/x-www-form-urlencoded' `
-Body 'username=admin&password=admin&grant_type=password&client_id=admin-cli'
$token = $tokenResponse.access_token
Write-Host "[OK] Authentifié avec succès" -ForegroundColor Green
Write-Host ""
} catch {
Write-Host "[ERREUR] Impossible de s'authentifier à Keycloak" -ForegroundColor Red
Write-Host "Vérifier les credentials admin/admin" -ForegroundColor Yellow
exit 1
}
# Lister les realms
$realms = Invoke-RestMethod -Method Get `
-Uri 'http://localhost:8180/admin/realms' `
-Headers @{ Authorization = "Bearer $token" }
Write-Host "=== REALMS DISPONIBLES ===" -ForegroundColor Cyan
$realms | ForEach-Object { Write-Host " - $($_.realm)" }
# Vérifier realm unionflow
$unionflow = $realms | Where-Object { $_.realm -eq 'unionflow' }
if (-not $unionflow) {
Write-Host "`n[ERREUR] Realm 'unionflow' non trouvé" -ForegroundColor Red
exit 1
}
Write-Host "`n[OK] Realm 'unionflow' existe" -ForegroundColor Green
# Utilisateurs
$users = Invoke-RestMethod -Method Get `
-Uri 'http://localhost:8180/admin/realms/unionflow/users' `
-Headers @{ Authorization = "Bearer $token" }
Write-Host "`n=== UTILISATEURS (total: $($users.Count)) ===" -ForegroundColor Cyan
$users | ForEach-Object {
Write-Host " - $($_.username) | $($_.email)"
}
# Clients
$clients = Invoke-RestMethod -Method Get `
-Uri 'http://localhost:8180/admin/realms/unionflow/clients' `
-Headers @{ Authorization = "Bearer $token" }
Write-Host "`n=== CLIENTS ===" -ForegroundColor Cyan
$mobileClient = $null
$clients | Where-Object { $_.clientId -like '*unionflow*' } | ForEach-Object {
Write-Host " - $($_.clientId)"
if ($_.clientId -eq 'unionflow-mobile') {
$mobileClient = $_
}
}
if ($mobileClient) {
Write-Host "`n[OK] Client 'unionflow-mobile' existe" -ForegroundColor Green
} else {
Write-Host "`n[ERREUR] Client 'unionflow-mobile' non trouvé" -ForegroundColor Red
}
Write-Host "`n=== RÉSUMÉ ===" -ForegroundColor Cyan
Write-Host "Realm unionflow: OK" -ForegroundColor Green
Write-Host "Client unionflow-mobile: $(if ($mobileClient) { 'OK' } else { 'MANQUANT' })" -ForegroundColor $(if ($mobileClient) { 'Green' } else { 'Red' })
Write-Host "Utilisateurs: $($users.Count)"
Write-Host ""
Write-Host "Prêt pour les tests d'intégration mobile !" -ForegroundColor Green