Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- #
- # author: ajs
- # license: bsd
- # copyright: re2
- import json
- import sys
- import urllib
- import urllib2
- jenkinsUrl = "https://jenkins.example.com/job/"
- if len( sys.argv ) > 1 :
- jobName = sys.argv[1]
- jobNameURL = urllib.quote(jobName)
- else :
- sys.exit(1)
- try:
- jenkinsStream = urllib2.urlopen( jenkinsUrl + jobNameURL + "/lastBuild/api/json" )
- except urllib2.HTTPError, e:
- print "URL Error: " + str(e.code)
- print " (job name [" + jobName + "] probably wrong)"
- sys.exit(2)
- try:
- buildStatusJson = json.load( jenkinsStream )
- except:
- print "Failed to parse json"
- sys.exit(3)
- if buildStatusJson.has_key( "result" ):
- print "[" + jobName + "] build status: " + buildStatusJson["result"]
- if buildStatusJson["result"] != "SUCCESS" :
- exit(4)
- else:
- sys.exit(5)
- sys.exit(0)
- java -jar jenkins-cli.jar -s <url of Jenkins instance> build <project> -s
- java -jar jenkins-cli.jar -s <url of Jenkins instance> build <project> -f
- echo $?
- from jenkinsapi.jenkins import Jenkins
- jenkins_url = 'http://<server url>/'
- server = Jenkins(jenkins_url, username = 'myUser', password = myPass)
- job_instance = server.get_job('the job name')
- running = job_instance.is_queued_or_running()
- if not running:
- latestBuild=job_instance.get_last_build()
- print latestBuild.get_status()
- http://localhost/jenkins/job/<jobName>/lastBuild/api/xml
- :loop
- ping 127.0.0.1 -n 6 1>nul
- curl --silent http://localhost:8080/job/JOB_NAME/lastBuild/api/xml | FINDSTR "SUCCESS FAILURE" >nul & IF ERRORLEVEL 1 (goto :loop)
- echo "BUILD FINISH!!"
Add Comment
Please, Sign In to add comment