def stabilize_job()

in functions/source/KubeManifest/lambda_function.py [0:0]


def stabilize_job(namespace, name):
    while True:
        response = json.loads(run_command(f"kubectl get job/{name} -n {namespace} -o json"))
        for condition in response.get('status', {}).get('conditions', []):
            if condition.get("status") == "True":
                if condition.get('type') == "Complete":
                    return
                if condition.get('type') == "Failed":
                    raise Exception(f"Job failed {condition.get('reason')} {condition.get('message')}")
        sleep(5)