From ca9ca8cbbf5795646af9102e7d4dc45dc869c951 Mon Sep 17 00:00:00 2001 From: Michael Clifford Date: Tue, 29 Aug 2023 10:19:43 -0400 Subject: [PATCH 1/4] fix-scheduling-spec --- src/codeflare_sdk/templates/base-template.yaml | 2 -- src/codeflare_sdk/utils/generate_yaml.py | 17 +++++++++-------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/codeflare_sdk/templates/base-template.yaml b/src/codeflare_sdk/templates/base-template.yaml index 386dd86bf..56014a068 100644 --- a/src/codeflare_sdk/templates/base-template.yaml +++ b/src/codeflare_sdk/templates/base-template.yaml @@ -8,8 +8,6 @@ metadata: orderedinstance: "m4.xlarge_g4dn.xlarge" spec: priority: 9 - schedulingSpec: - minAvailable: 3 resources: Items: [] GenericItems: diff --git a/src/codeflare_sdk/utils/generate_yaml.py b/src/codeflare_sdk/utils/generate_yaml.py index 697122a2c..df352d849 100755 --- a/src/codeflare_sdk/utils/generate_yaml.py +++ b/src/codeflare_sdk/utils/generate_yaml.py @@ -89,12 +89,19 @@ def update_labels(yaml, instascale, instance_types): metadata.pop("labels") -def update_priority(item, dispatch_priority): +def update_priority(yaml, item, workers, dispatch_priority): if dispatch_priority is not None: head = item.get("generictemplate").get("spec").get("headGroupSpec") worker = item.get("generictemplate").get("spec").get("workerGroupSpecs")[0] head["template"]["spec"]["priorityClassName"] = dispatch_priority worker["template"]["spec"]["priorityClassName"] = dispatch_priority + update_scheduling_spec(yaml, workers) + + +def update_scheduling_spec(yaml, workers): + spec = yaml.get("spec") + spec["schedulingSpec"] = {"minAvailable": ""} + spec["schedulingSpec"]["minAvailable"] = workers + 1 def update_custompodresources( @@ -183,11 +190,6 @@ def update_resources(spec, min_cpu, max_cpu, min_memory, max_memory, gpu): limits["nvidia.com/gpu"] = gpu -def update_scheduling_spec(yaml, workers): - spec = yaml.get("spec") - spec["schedulingSpec"]["minAvailable"] = workers + 1 - - def update_nodes( item, appwrapper_name, @@ -368,8 +370,7 @@ def generate_appwrapper( route_item = resources["resources"].get("GenericItems")[1] update_names(user_yaml, item, appwrapper_name, cluster_name, namespace) update_labels(user_yaml, instascale, instance_types) - update_priority(item, dispatch_priority) - update_scheduling_spec(user_yaml, workers) + update_priority(user_yaml, item, workers, dispatch_priority) update_custompodresources( item, min_cpu, max_cpu, min_memory, max_memory, gpu, workers ) From 6acbe71058e8cdc4d7f4c35244eb13051cc8d054 Mon Sep 17 00:00:00 2001 From: Michael Clifford Date: Thu, 31 Aug 2023 15:40:55 -0400 Subject: [PATCH 2/4] remove use of schedulingSpec --- src/codeflare_sdk/utils/generate_yaml.py | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/codeflare_sdk/utils/generate_yaml.py b/src/codeflare_sdk/utils/generate_yaml.py index df352d849..031a5668e 100755 --- a/src/codeflare_sdk/utils/generate_yaml.py +++ b/src/codeflare_sdk/utils/generate_yaml.py @@ -95,13 +95,6 @@ def update_priority(yaml, item, workers, dispatch_priority): worker = item.get("generictemplate").get("spec").get("workerGroupSpecs")[0] head["template"]["spec"]["priorityClassName"] = dispatch_priority worker["template"]["spec"]["priorityClassName"] = dispatch_priority - update_scheduling_spec(yaml, workers) - - -def update_scheduling_spec(yaml, workers): - spec = yaml.get("spec") - spec["schedulingSpec"] = {"minAvailable": ""} - spec["schedulingSpec"]["minAvailable"] = workers + 1 def update_custompodresources( From 297c2a315b4da3489b20959c402ea2e7f0d8c123 Mon Sep 17 00:00:00 2001 From: Michael Clifford Date: Thu, 31 Aug 2023 15:56:53 -0400 Subject: [PATCH 3/4] remove schedulingSpec from test-case.yaml --- tests/test-case.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/test-case.yaml b/tests/test-case.yaml index df88e7bb0..cbfb998e9 100644 --- a/tests/test-case.yaml +++ b/tests/test-case.yaml @@ -195,5 +195,3 @@ spec: name: unit-test-cluster-head-svc replicas: 1 Items: [] - schedulingSpec: - minAvailable: 3 From 0984106b2cef66ec8acdb796f294ec2397563e27 Mon Sep 17 00:00:00 2001 From: Michael Clifford Date: Thu, 31 Aug 2023 16:18:34 -0400 Subject: [PATCH 4/4] remove extra params from update_priority --- src/codeflare_sdk/utils/generate_yaml.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/codeflare_sdk/utils/generate_yaml.py b/src/codeflare_sdk/utils/generate_yaml.py index 031a5668e..ef343a29a 100755 --- a/src/codeflare_sdk/utils/generate_yaml.py +++ b/src/codeflare_sdk/utils/generate_yaml.py @@ -89,7 +89,7 @@ def update_labels(yaml, instascale, instance_types): metadata.pop("labels") -def update_priority(yaml, item, workers, dispatch_priority): +def update_priority(item, dispatch_priority): if dispatch_priority is not None: head = item.get("generictemplate").get("spec").get("headGroupSpec") worker = item.get("generictemplate").get("spec").get("workerGroupSpecs")[0] @@ -363,7 +363,7 @@ def generate_appwrapper( route_item = resources["resources"].get("GenericItems")[1] update_names(user_yaml, item, appwrapper_name, cluster_name, namespace) update_labels(user_yaml, instascale, instance_types) - update_priority(user_yaml, item, workers, dispatch_priority) + update_priority(item, dispatch_priority) update_custompodresources( item, min_cpu, max_cpu, min_memory, max_memory, gpu, workers )