loging in restart

This commit is contained in:
Artur Kuś 2025-09-23 07:29:05 +02:00
parent 4580f79aa7
commit e075750509
1 changed files with 49 additions and 15 deletions

View File

@ -3,21 +3,55 @@ pipeline {
stages {
stage('Restart all services') {
steps {
sh '''
echo "Sprawdzam dostępność docker"
which docker
docker --version
echo "Lista usług przed restartem:"
docker service ls
echo "Restartowanie usług..."
SERVICES=$(docker service ls --format "{{.Name}}" | grep -v 'jenkins')
if [ -z "$SERVICES" ]; then
echo "Brak usług do zrestartowania."
else
echo "Restartowanie usług: $SERVICES"
docker service update --force $SERVICES
fi
'''
script {
try {
sh '''
set +e # Wyłącz strict error handling
echo "=== Sprawdzam dostępność Docker ==="
which docker
docker --version
echo "=== Sprawdzam czy Docker Swarm jest aktywny ==="
if docker node ls > /dev/null 2>&1; then
echo "Docker Swarm jest aktywny"
echo "=== Lista usług ==="
SERVICES=$(docker service ls --format "{{.Name}}" 2>/dev/null | grep -v 'jenkins' || true)
if [ -z "$SERVICES" ]; then
echo "BRAK USŁUG DO RESTARTU - nie znaleziono żadnych usług Docker Swarm"
echo "To może oznaczać, że:"
echo "1. Nie używasz Docker Swarm"
echo "2. Wszystkie usługi mają 'jenkins' w nazwie"
echo "3. Naprawdę nie masz żadnych usług"
exit 0 # To nie jest błąd - po prostu nie ma co restartować
else
echo "Znalezione usługi do restartu: $SERVICES"
for service in $SERVICES; do
echo "Restartowanie: $service"
docker service update --force $service
done
fi
else
echo "Docker Swarm NIE jest aktywny - przechodzę do restartu kontenerów"
# Restart zwykłych kontenerów zamiast usług
CONTAINERS=$(docker ps --format "{{.Names}}" | grep -v 'jenkins' || true)
if [ -z "$CONTAINERS" ]; then
echo "BRAK KONTENERÓW DO RESTARTU"
exit 0
else
echo "Restartowanie kontenerów: $CONTAINERS"
docker restart $CONTAINERS
fi
fi
'''
} catch (Exception e) {
echo "Błąd: ${e.getMessage()}"
currentBuild.result = 'UNSTABLE'
}
}
}
}
}