मेरे पास एक ऐसी स्क्रिप्ट है जो कलाकृतियों को जेनकींस नौकरी से खींचती है और इसे हमारे हार्डवेयर परीक्षण प्रणाली पर स्थापित करती है। अब, आज मुझे एक सुंदर पुराने संस्करण में डाउनग्रेड करना होगा। दुर्भाग्य से, जेनकींस एपीआई केवल अंतिम कुछ बनाता है।मैं जेनकींस एपीआई रिटर्न को और अधिक कैसे बना सकता हूं?
मैं जेनकिंकी पाइथन एपीआई का उपयोग करता हूं। यह विफल रहता है इस प्रकार है:
/usr/local/lib/python2.7/dist-packages/jenkinsapi-0.1.6-py2.7.egg/jenkinsapi/job.pyc in get_build(self, buildnumber)
177 def get_build(self, buildnumber):
178 assert type(buildnumber) == int
--> 179 url = self.get_build_dict()[ buildnumber ]
180 return Build(url, buildnumber, job=self)
181
अजगर एपीआई यूआरएल http://jenkins/job/job-name/api/python/
पूरी करता है। तो मुझे लगता है कि अपने आप को, तो मैं निम्नलिखित प्रतिक्रिया मिलता है:
{"actions":[{},{},{},{},{},{},{}],
"description":"text",
"displayName":"job-name",
"displayNameOrNull":None,
"name":"job-name",
"url":"http://jenkins/job/job-name/",
"buildable":True,
"builds":[
{"number":437,"url":"http://jenkins/job/job-name/437/"},
{"number":436,"url":"http://jenkins/job/job-name/436/"},
{"number":435,"url":"http://jenkins/job/job-name/435/"},
{"number":434,"url":"http://jenkins/job/job-name/434/"},
{"number":433,"url":"http://jenkins/job/job-name/433/"},
{"number":432,"url":"http://jenkins/job/job-name/432/"},
{"number":431,"url":"http://jenkins/job/job-name/431/"},
{"number":430,"url":"http://jenkins/job/job-name/430/"},
{"number":429,"url":"http://jenkins/job/job-name/429/"},
{"number":428,"url":"http://jenkins/job/job-name/428/"},
{"number":427,"url":"http://jenkins/job/job-name/427/"},
{"number":426,"url":"http://jenkins/job/job-name/426/"},
{"number":425,"url":"http://jenkins/job/job-name/425/"},
{"number":424,"url":"http://jenkins/job/job-name/424/"},
{"number":423,"url":"http://jenkins/job/job-name/423/"}],
"color":"yellow_anime",
"firstBuild": {"number":311,"url":"http://jenkins/job/job-name/311/"},
"healthReport":[
{"description":"Test Result: 0 tests failing out of a total of 3 tests.","iconUrl":"health-80plus.png","score":100},
{"description":"Build stability: No recent builds failed.","iconUrl":"health-80plus.png","score":100}],
"inQueue":False,
"keepDependencies":False,
"lastBuild":{"number":438,"url":"http://jenkins/job/job-name/438/"},
"lastCompletedBuild":{"number":437,"url":"http://jenkins/job/job-name/437/"},
"lastFailedBuild":{"number":386,"url":"http://jenkins/job/job-name/386/"},
"lastStableBuild":{"number":424,"url":"http://jenkins/job/job-name/424/"},
"lastSuccessfulBuild":{"number":437,"url":"http://jenkins/job/job-name/437/"},
"lastUnstableBuild":{"number":437,"url":"http://jenkins/job/job-name/437/"},
"lastUnsuccessfulBuild":{"number":437,"url":"http://jenkins/job/job-name/437/"},
"nextBuildNumber":439,
"property":[],
"queueItem":None,
"concurrentBuild":False,
"downstreamProjects":[],
"scm":{},
"upstreamProjects":[]}
अब, मैं काम संख्या 315 मैं यह करने के लिए कैसे करते प्राप्त करना चाहता था?
मैं बिल्डों की संख्या को सीमित करता हूं, लेकिन यह बिल्ड अभी भी उस सीमा के भीतर है। साथ ही, यह विशेष निर्माण "हमेशा के लिए रखें" चिह्नित किया गया है। – martinhans