khanhpro_vn

Untitled

May 9th, 2016
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.35 KB | None | 0 0
  1. #!/usr/bin/python
  2.  
  3. import os
  4. from elasticsearch import Elasticsearch
  5. import jenkins
  6. import requests
  7. import json
  8. import urllib
  9.  
  10. # change to your here
  11. jenkinsUrl = "http://user:password@localhost:8080"
  12. elasticUrl = "http://localhost:9200"
  13.  
  14. #server = jenkins.Jenkins(jenkinsUrl)
  15. #server = jenkins.Jenkins(jenkinsUrl, username=jenkins_user, password=jenkins_password)
  16. es = Elasticsearch([elasticUrl])
  17. env = os.environ
  18. body = env.data
  19. #print body
  20. r = requests.get(jenkinsUrl + "/view/All/api/json")
  21. allJob = json.loads(r.text)
  22. #print allJob
  23. jobs = allJob['jobs']
  24. for job in jobs:
  25. jobname = job['name']
  26. print jobname
  27. urlName = urllib.pathname2url(job['name'])
  28. jobUrl = jenkinsUrl + "/job/" + urlName + "/api/json"
  29. r = requests.get(jobUrl)
  30. jobInfo = json.loads(r.text)
  31. #print jobInfo
  32. #buildinfo = server.get_job_info(job['name'])
  33. try:
  34. buildnumber = jobInfo['lastBuild']['number']
  35. except:
  36. buildnumber = 1
  37. #print buildnumber
  38. body['JOB_NAME'] = jobname
  39. body['JOB_URL'] = job['url']
  40. body['BUILD_DISPLAY_NAME'] = "#" + str(buildnumber)
  41. body['BUILD_ID'] = buildnumber
  42. body['BUILD_NUMBER'] = buildnumber
  43. res = es.index(index="jenkins_env", doc_type='env', id=job['name'], body=body)
Add Comment
Please, Sign In to add comment