def test_status_change(self): assert RedisStatuses.get_status('job-uuid') is None RedisStatuses.delete_status('job-uuid') RedisStatuses.set_status('job-uuid', 'running') assert RedisStatuses.get_status('job-uuid') == 'running' RedisStatuses.delete_status('job-uuid') assert RedisStatuses.get_status('job-uuid') is None
def should_handle_job_status(pod_state: Any, status: str) -> bool: job_uuid = pod_state['details']['labels']['job_uuid'] current_status = RedisStatuses.get_status(job=job_uuid) if not current_status: # If the status does not exist or is evicted return True try: return JobLifeCycle.can_transition( status_from=RedisStatuses.get_status(job=job_uuid), status_to=status) except redis.connection.ConnectionError: return True
def should_handle_job_status(pod_state: Any, status: str) -> bool: job_uuid = pod_state['details']['labels']['job_uuid'] return RedisStatuses.get_status(job=job_uuid) != status