Fix: Verbesserte Login-Debug-Ausgabe

- Zeigt jetzt immer Login-Output, auch wenn leer
- Setzt +e / -e für korrekte Exit-Code-Erfassung
- Bessere Fehleranalyse für 401/Unauthorized
- Detailliertere Fehlermeldungen
This commit is contained in:
2025-10-31 18:17:21 +01:00
parent e463f074f2
commit 3c28dbfbe8

View File

@@ -250,9 +250,35 @@ jobs:
echo "✅ Registry erreichbar über HTTP: http://$TEST_URL (Status: $HTTP_CODE)"
# Versuche Login mit HTTP (ohne :5000 nochmal hinzuzufügen)
# Docker benötigt möglicherweise insecure-registry Konfiguration für HTTP
echo " Versuche Docker Login..."
# Führe Login aus und sammle Output UND Exit-Code
set +e # Erlaube Fehler während Login-Versuch
LOGIN_OUTPUT=$(echo "$REGISTRY_PASSWORD" | docker login "$TEST_URL" -u "$REGISTRY_USER" --password-stdin 2>&1)
LOGIN_EXIT_CODE=$?
echo " Login-Output: $LOGIN_OUTPUT"
set -e # Zurück zu strict mode
echo " Login-Exit-Code: $LOGIN_EXIT_CODE"
echo " Login-Output:"
if [ -n "$LOGIN_OUTPUT" ]; then
echo "$LOGIN_OUTPUT" | while IFS= read -r line; do
echo " $line"
done || echo " (keine Ausgabe)"
else
echo " (keine Ausgabe)"
fi
# Prüfe ob es ein insecure-registry Problem ist
if echo "$LOGIN_OUTPUT" | grep -qi "insecure\|certificate\|tls\|unauthorized\|401"; then
echo " ⚠️ Mögliche Probleme:"
if echo "$LOGIN_OUTPUT" | grep -qi "unauthorized\|401"; then
echo " - Unauthorized (401): Möglicherweise falsche Credentials"
fi
if echo "$LOGIN_OUTPUT" | grep -qi "insecure\|certificate\|tls"; then
echo " - SSL/Insecure Registry Problem erkannt"
fi
fi
if [ $LOGIN_EXIT_CODE -eq 0 ]; then
echo "✅ Erfolgreich bei Registry angemeldet: $TEST_URL"
@@ -260,7 +286,8 @@ jobs:
LOGIN_SUCCESS=true
break
else
echo "⚠️ Login fehlgeschlagen für $TEST_URL (Exit Code: $LOGIN_EXIT_CODE), versuche nächste URL..."
echo "⚠️ Login fehlgeschlagen für $TEST_URL (Exit Code: $LOGIN_EXIT_CODE)"
echo " Prüfe Login-Output oben für Details"
fi
else
echo "⚠️ Registry nicht erreichbar: http://$TEST_URL (Status: $HTTP_CODE)"