一千萬個為什麽

搜索

在Pipeline作業中運行後臺進程



我正在尋找一種方法來使用Jenkins聲明式管道在後臺運行java進程。以下是代碼片段

stage('Deploy'){
        steps{
            script{
                withEnv(['BUILD_ID=dontkill']) {
                    sh "nohup java -jar test-0.0.1-SNAPSHOT.war &"
                }
            }
        }
}

已經知道Jenkins的ProcessTreeKiller,並且每個答案都會提示如此做。我嘗試過在步驟塊內使用環境,但沒有運氣。

詹金斯版本:2.60.1

管道插件:1.1.7

任何幫助是極大的贊賞。

轉載註明原文: 在Pipeline作業中運行後臺進程

一共有 1 個回答:

任何一個面臨相同問題並使用管道項目的人,請設置 JENKINS_NODE_COOKIE 而不是 BUILD_ID

不要浪費時間設置 HUDSON_COOKIEHUDSON_SERVER_COOKIEJENKINS_COOKIEJENKINS_SERVER_COOKIE 。他們都沒有為管道項目工作。

請參閱 https://issues.jenkins-ci.org/browse/JENKINS-28182了解更多詳情。