def set_finished_at(run: BaseRun) -> bool: if LifeCycle.is_done(run.status) and run.finished_at is None: run.finished_at = now() if run.started_at is None: # We should not have this case run.started_at = run.created_at # Update run time if run.run_time is None: run.run_time = (run.finished_at - run.started_at).seconds return True return False
def resume_run( run: BaseRun, user_id: int = None, name: str = None, description: str = None, content: str = None, readme: str = None, tags: List[str] = None, ) -> BaseRun: op_spec = V1Operation.read(run.raw_content) compiled_operation, instance = operations.init_run( project_id=run.project_id, user_id=user_id or run.user_id, name=name or run.name, description=description or run.description, readme=readme or run.readme, op_spec=op_spec, tags=tags or run.tags, override=content, ) run.user_id = instance.user_id run.name = instance.name run.description = instance.description run.readme = instance.readme run.content = instance.content run.raw_content = instance.raw_content run.tags = instance.tags run.save() new_run_status( run, condition=V1StatusCondition.get_condition(type=V1Statuses.RESUMING, status=True), ) return run
def set_started_at(run: BaseRun) -> bool: # We allow to override started_at if the value is running if run.started_at is not None: return False if LifeCycle.is_running(run.status): run.started_at = now() # Update wait_time if run.wait_time is None: run.wait_time = (run.started_at - run.created_at).seconds return True return False
def set_started_at(run: BaseRun) -> bool: # We allow to override started_at if the value is running if run.started_at is not None: return False if LifeCycle.is_running(run.status): run.started_at = now() return True return False