Ich suche nach einer Möglichkeit, einen Java-Prozess im Hintergrund mithilfe der deklarativen Jenkins-Pipeline auszuführen. Unten ist das Codefragment
stage('Deploy'){
steps{
script{
withEnv(['BUILD_ID=dontkill']) {
sh "nohup java -jar test-0.0.1-SNAPSHOT.war &"
}
}
}
}
ProcessTreeKiller von Jenkins ist bereits bekannt, und jede Antwort schlägt vor, dasselbe zu tun. Ich habe ohne Glück versucht, die Umgebung innerhalb des Treppenblocks zu verwenden.
Jenkins-Version: 2.60.1
Pipeline-Plugin: 1.1.7
Jede Hilfe wird sehr geschätzt.
jenkins
jenkins-pipeline
jenkinsfile
Dharanidhar
quelle
quelle
/tmp
) und führen Sie alles in doppelten Anführungszeichen aus.Antworten:
Jeder, der mit demselben Problem konfrontiert ist und ein Pipeline-Projekt verwendet, wird
JENKINS_NODE_COOKIE
anstelle von festgelegtBUILD_ID
.Verschwenden Sie keine Zeit
HUDSON_COOKIE
mitHUDSON_SERVER_COOKIE
,JENKINS_COOKIE
oderJENKINS_SERVER_COOKIE
. Keiner von ihnen arbeitet für ein Pipeline-Projekt.Weitere Informationen finden Sie unter https://issues.jenkins-ci.org/browse/JENKINS-28182 .
quelle