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
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