पाइपलाइन जॉब में बैकग्राउंड प्रोसेस चलाना


15

मैं जेनकींस घोषणात्मक पाइपलाइन का उपयोग करके पृष्ठभूमि में जावा प्रक्रिया चलाने का एक तरीका ढूंढ रहा हूं। नीचे कोड का स्निपेट है

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

पहले से ही जेनकिंस के ProcessTreeKiller के बारे में पता है और हर उत्तर एक ही करने का सुझाव देता है। मैंने बिना किसी भाग्य के चरणों के ब्लॉक के अंदर पर्यावरण का उपयोग करने की कोशिश की है।

जेनकिंस संस्करण: 2.60.1

पाइपलाइन प्लगइन: 1.1.7

कोई भी मदद बहुत ही सराहनीय होगी।


क्या होता है? त्रुटि संदेश? मौन विफल?
बी लेयर

मेरे पास रनिंग जावा प्रक्रिया नहीं है। यह मेरी पाइपलाइन का अंतिम चरण है इसलिए मेरा अनुमान है कि जेनकिन्स इसे शुरू करता है और अगले ही पल इसे समाप्त कर देता है।
धरणीधर

जब आप सीधे गुलाम पर कमांड चलाते हैं तो क्या होता है? एजेंट / स्लेव होस्ट में प्रवेश करें, नौकरी के कार्यक्षेत्र पर जाएं (या अगर यह युद्ध की फाइल में कहीं मैन्युअल रूप से कॉपी किया गया था ... /tmpउदाहरण के लिए), और डबल-कोट्स के बीच सब कुछ चलाएं।
बी लेयर

इसके अलावा, अगर शेल्फ़ कमांड जो भी डायरेक्टरी में होता है, उसमें nohup.out नामक फ़ाइल के लिए कार्यक्षेत्र को मिटाया नहीं जाता है। जब आउटपुट अन्यथा पुनर्निर्देशित नहीं होता है, तो nohup स्वचालित रूप से ऐसी फ़ाइल में लॉग इन करता है।
बी लेयर

@BairM उसी स्क्रिप्ट को ठीक से चलाता है जब मैं एक गैर-लॉगिन गैर-इंटरैक्टिव शेल के माध्यम से जेनकींस उपयोगकर्ता के साथ प्रयास करता हूं। दोहरे उद्धरण चिह्नों में दौड़ने से कोई फर्क नहीं पड़ता। nohup.out मौजूद है लेकिन यह 0 KB है।
धरणीधर

जवाबों:


16

कोई भी एक ही समस्या का सामना कर रहा है और पाइपलाइन परियोजना का उपयोग कर, के JENKINS_NODE_COOKIEबजाय सेट BUILD_ID

समय सेटिंग बर्बाद मत HUDSON_COOKIE, HUDSON_SERVER_COOKIE, JENKINS_COOKIEया JENKINS_SERVER_COOKIE। उनमें से कोई भी पाइपलाइन परियोजना के लिए काम नहीं करता है।

अधिक जानकारी के लिए https://issues.jenkins-ci.org/browse/JENKINS-28182 देखें।


1
वाह, यह बेसबॉल के अंदर कुछ वहीं है। जानकार अच्छा लगा।
बी लेयर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.