示例#1
0
 def process_cancel(self, job):
     job_status_history = myDb.get_job_statuses(job.id)
     last_status = job_status_history[-1].status
     build_client = job_status_history[-1].buildclient
     if (len(job_status_history) > 0) and (last_status == "Building") and (build_client != None):
         cancel_req = jsonpickle.encode(CancelRequest(job, self.settings["webserver_url"]))
         msg = amqp.Message(cancel_req)
         msg.properties["delivery_mode"] = 2
         print "UNFINISHED JOB ID", job.id, "STATUS:", last_status, "SENDING CANCEL REQUEST TO", build_client
         self.chan.basic_publish(msg, exchange=pybit.exchange_name, routing_key=build_client)
     else:
         print "UNFINISHED JOB ID", job.id, "STATUS:", last_status, "UPDATE STATUS TO 'Cancelled'"
         myDb.put_job_status(job.id, "Cancelled", build_client)
     return
示例#2
0
文件: job.py 项目: troglobit/pybit
def update_job_status(jobid):
	job_status = request.forms.status
	job_client = None
	if hasattr(request.forms, 'client') :
		job_client = request.forms.client
	if job_status:
		job = myDb.get_job(jobid)
		if job is not None:
			print "Setting ", job.id, " to ", job_status
			myDb.put_job_status(job.id, job_status, job_client)
		else:
			response.status = "404 - No job found with this ID."
			return
	else:
		response.status = "400 - Required fields missing."
		return