Nebula: add VM connection timeout
This commit is contained in:
parent
78c8a9e74e
commit
ec523ddfb4
|
@ -149,6 +149,7 @@ def runInNewVM(Map args, Closure body) {
|
||||||
def vmTemplate = args.get('vmTemplate', '')
|
def vmTemplate = args.get('vmTemplate', '')
|
||||||
def terminateOnExit = args.get('terminateOnExit', true)
|
def terminateOnExit = args.get('terminateOnExit', true)
|
||||||
def shell = args.get("shell", "/bin/sh")
|
def shell = args.get("shell", "/bin/sh")
|
||||||
|
def connectionTimeout = args.get('connectionTimeout', 10)
|
||||||
|
|
||||||
// On récupère les identifiants de connexion SSH pour la VM
|
// On récupère les identifiants de connexion SSH pour la VM
|
||||||
withCredentials([
|
withCredentials([
|
||||||
|
@ -161,6 +162,7 @@ def runInNewVM(Map args, Closure body) {
|
||||||
|
|
||||||
// On attend que la connexion SSH soit disponible
|
// On attend que la connexion SSH soit disponible
|
||||||
println "En attente de l'accès SSH sur la machine ${host}..."
|
println "En attente de l'accès SSH sur la machine ${host}..."
|
||||||
|
timeout(connectionTimeout) {
|
||||||
while(true) {
|
while(true) {
|
||||||
def status = sh script: "nc -zv ${host} 22", returnStatus: true
|
def status = sh script: "nc -zv ${host} 22", returnStatus: true
|
||||||
if (status == 0) {
|
if (status == 0) {
|
||||||
|
@ -168,6 +170,7 @@ def runInNewVM(Map args, Closure body) {
|
||||||
}
|
}
|
||||||
sleep(5)
|
sleep(5)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
def remoteShell = { script ->
|
def remoteShell = { script ->
|
||||||
// On créait un script temporaire à exécuter sur la machine distante
|
// On créait un script temporaire à exécuter sur la machine distante
|
||||||
|
|
Loading…
Reference in New Issue