Skip to content

Commit

Permalink
Accept any valid k8s destination param as overridable
Browse files Browse the repository at this point in the history
  • Loading branch information
nuwang committed Feb 11, 2025
1 parent 6350bab commit 6b5fd3e
Showing 1 changed file with 4 additions and 12 deletions.
16 changes: 4 additions & 12 deletions lib/galaxy/jobs/runners/kubernetes.py
Original file line number Diff line number Diff line change
Expand Up @@ -267,8 +267,10 @@ def __configure_port_routing(self, ajs):
ingress.create()

def __get_overridable_params(self, job_wrapper, param_key):
dest_params = self.__get_destination_params(job_wrapper)
return dest_params.get(param_key, self.runner_params[param_key])
try:
return job_wrapper.job_destination.params[param_key]
except KeyError:
self.runner_params[param_key]

def __get_pull_policy(self):
return pull_policy(self.runner_params)
Expand Down Expand Up @@ -710,16 +712,6 @@ def __get_k8s_container_name(self, job_wrapper):
def __get_k8s_job_name(self, prefix, job_wrapper):
return f"{prefix}-{self.__force_label_conformity(job_wrapper.get_id_tag())}"

def __get_destination_params(self, job_wrapper):
"""Obtains allowable runner param overrides from the destination"""
job_destination = job_wrapper.job_destination
OVERRIDABLE_PARAMS = ["k8s_node_selector", "k8s_affinity", "k8s_extra_job_envs"]
new_params = {}
for each_param in OVERRIDABLE_PARAMS:
if each_param in job_destination.params:
new_params[each_param] = job_destination.params[each_param]
return new_params

def check_watched_item(self, job_state):
"""Checks the state of a job already submitted on k8s. Job state is an AsynchronousJobState"""
jobs = find_job_object_by_name(self._pykube_api, job_state.job_id, self.runner_params["k8s_namespace"])
Expand Down

0 comments on commit 6b5fd3e

Please sign in to comment.