def worker_set_message(name): msg = request.form.get('message', '') worker = worker_manager.get(name) if not worker: return error(status_code=404) worker.set_message(msg.strip()) return ok()
def worker_poll_output(name): worker = worker_manager.get(name) if not worker: return error(status_code=404) output = worker.poll_output() return ok({ 'output': output, 'is_running': worker.is_running, 'return_code': worker.return_code, })
def workers(): return ok({ 'workers': [{ 'name': name, 'display_name': worker.display_name, 'status_url': url_for('.workers_status', name=name), 'poll_output_url': url_for('.worker_poll_output', name=name), 'deploy_url': url_for('.worker_deploy', name=name), 'kill_url': url_for('.worker_kill', name=name), 'set_message_url': url_for('.worker_set_message', name=name), 'is_running': worker.is_running, 'return_code': worker.return_code, 'message': worker.message, } for name, worker in worker_manager.items()] })
def workers_status(name): worker = worker_manager.get(name) if not worker: return error(status_code=404) return ok({ 'status': { 'name': worker.name, 'poll_output_url': url_for('.worker_poll_output', name=name), 'deploy_url': url_for('.worker_deploy', name=name), 'kill_url': url_for('.worker_kill', name=name), 'set_message_url': url_for('.worker_set_message', name=name), 'is_running': worker.is_running, 'return_code': worker.return_code, 'message': worker.message, } })
def worker_kill(name): worker = worker_manager.get(name) if not worker: return error(status_code=404) worker.kill() return ok()
def worker_deploy(name): worker = worker_manager.get(name) if not worker: return error(status_code=404) worker.run() return ok()