def get_root_workflows(username): """ Returns a collection of root level workflows. :query int start-index: Return results starting from record <start-index> (0 indexed) :query int max-results: Return a maximum of <max-results> records :query string query: Search criteria :query string order: Sorting criteria :query boolean pretty-print: Return formatted JSON response. :statuscode 200: OK :statuscode 204: No content; when no workflows found. :statuscode 400: Bad request :statuscode 401: Authentication failure :statuscode 403: Authorization failure :return type: Collection :return resource: Root Workflow """ queries = MasterWorkflowQueries(g.master_db_url) paged_response = queries.get_root_workflows(**g.query_args) if paged_response.total_records == 0: log.debug("Total records is 0; returning HTTP 204 No content") return make_response("", 204, JSON_HEADER) # # Generate JSON Response # response_json = jsonify(paged_response) return make_response(response_json, 200, JSON_HEADER)
def get_task_meta(username, m_wf_id, wf_id, task_id): """ Returns a collection of task's metadata. :query int start-index: Return results starting from record <start-index> (0 indexed) :query int max-results: Return a maximum of <max-results> records :query string query: Search criteria :query string order: Sorting criteria :query boolean pretty-print: Return formatted JSON response :statuscode 200: OK :statuscode 204: No content; when no workflow metadata found. :statuscode 400: Bad request :statuscode 401: Authentication failure :statuscode 403: Authorization failure :return type: Collection :return resource: TaskMeta """ queries = StampedeWorkflowQueries(g.stampede_db_url) paged_response = queries.get_task_meta(task_id, **g.query_args) if paged_response.total_records == 0: log.debug("Total records is 0; returning HTTP 204 No content") return make_response("", 204, JSON_HEADER) # # Generate JSON Response # response_json = jsonify(paged_response) return make_response(response_json, 200, JSON_HEADER)
def catch_all(error): log.exception(error) app_code, http_code = error.codes if hasattr(error, "codes") else ("UNKNOWN", 500) e = ErrorResponse(app_code, str(error)) response_json = jsonify(e) return make_response(response_json, http_code, JSON_HEADER)
def get_job_instance_invocations(username, m_wf_id, wf_id, job_id, job_instance_id): queries = StampedeWorkflowQueries(g.stampede_db_url) paged_response = queries.get_job_instance_invocations( wf_id, job_id, job_instance_id, **g.query_args) if paged_response.total_records == 0: log.debug("Total records is 0; returning HTTP 204 No content") return make_response("", 204, JSON_HEADER) # # Generate JSON Response # response_json = jsonify(paged_response) return make_response(response_json, 200, JSON_HEADER)
def get_root_workflow(username, m_wf_id): """ Returns root level workflow identified by m_wf_id. :query boolean pretty-print: Return formatted JSON response. :statuscode 200: OK :statuscode 401: Authentication failure :statuscode 403: Authorization failure :statuscode 404: Not found :return type: Record :return resource: Root Workflow """ queries = MasterWorkflowQueries(g.master_db_url) record = queries.get_root_workflow(m_wf_id) # # Generate JSON Response # response_json = jsonify(record) return make_response(response_json, 200, JSON_HEADER)
def get_job_instance(username, m_wf_id, wf_id, job_instance_id): """ Returns job instance identified by m_wf_id, wf_id, job_id, job_instance_id. :query boolean pretty-print: Return formatted JSON response :statuscode 200: OK :statuscode 401: Authentication failure :statuscode 403: Authorization failure :statuscode 404: Not found :return type: Record :return resource: JobInstance """ queries = StampedeWorkflowQueries(g.stampede_db_url) record = queries.get_job_instance(job_instance_id) # # Generate JSON Response # response_json = jsonify(record) return make_response(response_json, 200, JSON_HEADER)
def invalid_json_error(error): e = ErrorResponse("INVALID_JSON", str(error)) response_json = jsonify(e) return make_response(response_json, 400, JSON_HEADER)
def no_result_found(error): e = ErrorResponse("NOT_FOUND", str(error)) response_json = jsonify(e) return make_response(response_json, 404, JSON_HEADER)