Exemple #1
0
 def finish(self, request, pk, format=None):
     job = Job.find_job(pk)
     if not job:
         return ResponseNotFound("Job '%s' not found" % pk)
     jjob = JenkinsController().get_job(pk)
     if not jjob:
         return ResponseNotFound("Job '%s' not found on Jenkins" % pk)
     job.build_number = 0
     job.save()
     return ResponseOk(model_to_dict(job))
Exemple #2
0
 def stop(self, request, pk, format=None):
     job = Job.find_job(pk)
     if not job:
         return ResponseNotFound("Job '%s' not found" % pk)
     jay = JenkinsController()
     jjob = jay.get_job(pk)
     if not jjob:
         return ResponseNotFound("Job '%s' not found on Jenkins" % pk)
     try:
         jay.stop_build(job)
     except jenkins.JenkinsException as e:
         return ResponseServerError(str(e))
     job.save()
     return ResponseOk(model_to_dict(job))
Exemple #3
0
 def status(self, request, pk, format=None):
     job = Job.find_job(pk)
     if not job:
         return ResponseNotFound("Job '%s' not found" % pk)
     jay = JenkinsController()
     jjob = jay.get_job(pk)
     if not jjob:
         return ResponseNotFound("Job '%s' not found on Jenkins" % pk)
     try:
         if not job.build_number:
             return ResponseNotFound("Job '%s' doesn't have a current build" % pk)
         build_info = jay.get_build_info(job, job.build_number)
     except jenkins.JenkinsException as e:
         return ResponseServerError(str(e))
     return ResponseOk(build_info)
Exemple #4
0
 def builds(self, request, pk, format=None):
     job = Job.find_job(pk)
     if not job:
         return ResponseNotFound("Job '%s' not found" % pk)
     jay = JenkinsController()
     jjob = jay.get_job(pk)
     if not jjob:
         return ResponseNotFound("Job '%s' not found on Jenkins" % pk)
     try:
         job_info = jay.get_job_info(job)
         builds = []
         for build in job_info['builds']:
             builds.append(jay.get_build_info(job, build['number']))
     except jenkins.JenkinsException as e:
         return ResponseServerError(str(e))
     return ResponseOk(builds)
Exemple #5
0
 def start(self, request, pk, format=None):
     job = Job.find_job(pk)
     if not job:
         return ResponseNotFound("Job '%s' not found" % pk)
     try:
         jay = JenkinsController()
         jjob = jay.get_job(pk)
         if not jjob:
             jay.create_job(job)
         else:
             jay.update_job(job)
         job.build_number = jay.build_job(job)
         if job.build_number:
             job.save()
     except jenkins.JenkinsException as e:
         return ResponseServerError(str(e))
     return ResponseOk(model_to_dict(job))
Exemple #6
0
 def build_info(self, request, pk, number, format=None):
     job = Job.find_job(pk)
     if not job:
         return ResponseNotFound("Job '%s' not found" % pk)
     jay = JenkinsController()
     jjob = jay.get_job(pk)
     if not jjob:
         return ResponseNotFound("Job '%s' not found on Jenkins" % pk)
     try:
         try:
             number = int(number)
         except ValueError:
             msg = ("Job '%s' does not have a job '%s'" % (pk, number))
             return ResponseNotFound(msg)
         build_info = jay.get_build_info(job, number)
     except jenkins.JenkinsException as e:
         return ResponseServerError(str(e))
     return ResponseOk(build_info)