batch file - जेनकिंस-जेनकिंस में बस रोबोकोपी विफलता के साथ अंक बनाते हैं




batch-file jenkins (2)

मेरे पास बस विंडोज़ बैच कमांड (रोबोकॉपी) है जो शून्य त्रुटियों को रिटर्न करता है लेकिन हमेशा जेनकिंस में विफलता के रूप में चिह्नित होता है मुझे जानना है क्यों?

डी: \ जेनकिंस \ जॉब \ जेनकंस कॉन्फ़िग बैकअप \ वर्कस्पेस> बाहर निकलें 1 कदम बनाएँ 'विंडोज बैच कमांड निष्पादित करें' को असफलता के रूप में निर्मित चिह्नित किया गया है समाप्त: विफलता


जेनकिंस एक बिल्डर के रूप में चिह्नित करता है जब एक बैच स्क्रिप्ट का मौजूद कोड 0 नहीं होता है। अगर रोबोकॉपी आपकी स्क्रिप्ट में अंतिम आज्ञा है, रोबोकोपी निकास कोड लिया जाएगा।

रोबोकॉपी मानक का पालन नहीं करता है कि एक अन्य बाहर निकलने का कोड फिर 0 असफल बिल्ड का मतलब है। आपको रोबोकोपी निकास कोड का मूल्यांकन करने और रोबोकॉपी की सफलता के आधार पर exit 1 exit 0 या exit 1 exit 0 साथ अपनी स्क्रिप्ट समाप्त करने की आवश्यकता है।

रोबोकोपी निकास कोड पर एक नज़र डालें


रोबोकॉपी थोड़ा नक्शा देता है

विवरण के लिए यहां देखें: http://ss64.com/nt/robocopy-exit.html

संक्षेप में: '3' तक सभी निकास कोड ठीक हैं।

यह बैच फाइल कोड है जो मैं आमतौर पर उपयोग करता हूं:

set SOURCE= ...
set DESTINATION= ...

robocopy /MIR /LOG:example.robocopy.log.txt %SOURCE% %DESTINATION%
@echo robocopy exit code: %ERRORLEVEL%
@if %ERRORLEVEL% GTR 3 ( echo robocopy ERROR )
@if %ERRORLEVEL% GTR 3 ( exit %ERRORLEVEL% )
@set ERRORLEVEL=0

आप "गोटो" भी कर सकते हैं और बाहर निकलने के लिए नहीं।







robocopy