35 lines
991 B
Groovy
35 lines
991 B
Groovy
pipeline {
|
|
agent { label 'swarm' }
|
|
|
|
options {
|
|
buildDiscarder(logRotator(numToKeepStr: '20'))
|
|
timeout(time: 30, unit: 'MINUTES')
|
|
}
|
|
|
|
stages {
|
|
stage('Validate Workspace') {
|
|
steps {
|
|
sh 'pwd'
|
|
sh 'ls -la'
|
|
}
|
|
}
|
|
|
|
stage('Swarm Agent Check') {
|
|
steps {
|
|
sh 'hostname'
|
|
sh 'id'
|
|
sh 'docker version --format "{{.Server.Version}}"'
|
|
sh 'docker service ls --format "{{.Name}} {{.Replicas}}"'
|
|
}
|
|
}
|
|
|
|
stage('Service Reachability') {
|
|
steps {
|
|
sh 'curl -fsS https://gitea.derryle.com/user/login > /dev/null'
|
|
sh 'code=$(curl -sS -o /dev/null -w "%{http_code}" https://jenkins.derryle.com/login); echo "$code"; echo "$code" | grep -Eq "^(200|401|403)$"'
|
|
sh 'curl -fsS https://portainer.derryle.com/ > /dev/null'
|
|
}
|
|
}
|
|
}
|
|
}
|