"""End workflow.""" from video.constants import job_io_fields from video.logic.activity_task_logger import activity_task_logger from video.models import ows_video @activity_task_logger([ job_io_fields.WORKFLOW_JOB_ID, ], job_type='workflow', is_first_handler=True, is_last_handler=False) def start_workflow(inputs): """Start workflow. Args: inputs (dict): Inputs. """ outputs = { 'product_id': None } workflow = ows_video.get_job(inputs[job_io_fields.WORKFLOW_JOB_ID]) workflow_job_id = workflow['id'] product_id = workflow['context'].get(job_io_fields.PRODUCT_ID) upc = workflow['context'].get(job_io_fields.UPC) if product_id: outputs[job_io_fields.PRODUCT_ID] = product_id if upc: outputs[job_io_fields.UPC] = upc activity_jobs = ows_video.get_jobs({'job_parent_id': workflow_job_id}) outputs = { **outputs, **{'{}_job_id'.format(activity_job['type']): activity_job['id'] for activity_job in activity_jobs['items']}} return outputs @activity_task_logger([ job_io_fields.WORKFLOW_JOB_ID ], job_type='workflow', is_first_handler=False, is_last_handler=True) def end_workflow(inputs): """End workflow. Args: inputs (dict): Inputs. """ return {}