class KubeQueue::JobSpecification
Attributes
active_deadline_seconds[RW]
backoff_limit[RW]
command[W]
concurrent_policy[W]
container_name[W]
cpu_limit[RW]
cpu_request[RW]
env[W]
env_from_config_map[W]
env_from_secret[W]
image[W]
job_class[R]
job_labels[W]
memory_limit[RW]
memory_request[RW]
name[RW]
namespace[W]
payload[RW]
pod_labels[W]
restart_policy[W]
starting_deadline_seconds[RW]
worker_name[W]
Public Class Methods
new(job_class)
click to toggle source
# File lib/kube_queue/job_specification.rb, line 17 def initialize(job_class) @job_class = job_class end
Public Instance Methods
command()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 41 def command @command || ['bundle', 'exec', 'kube_queue', 'runner', job_class.name] end
concurrent_policy()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 73 def concurrent_policy @concurrent_policy || 'Allow' end
container_name()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 37 def container_name @container_name || worker_name end
env()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 57 def env KubeQueue.default_env.merge(@env || {}) end
env_from_config_map()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 61 def env_from_config_map @env_from_config_map || [] end
env_from_exists?()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 69 def env_from_exists? !env_from_config_map.empty? && !env_from_secret.empty? end
env_from_secret()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 65 def env_from_secret @env_from_config_map || [] end
image()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 25 def image @image || raise_not_found_required_parameter('image') end
job_labels()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 49 def job_labels @job_labels || {} end
job_name(job_id)
click to toggle source
# File lib/kube_queue/job_specification.rb, line 21 def job_name(job_id) "#{worker_name}-#{job_id}" end
namespace()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 29 def namespace @namespace || 'default' end
pod_labels()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 53 def pod_labels @pod_labels || {} end
raise_not_found_required_parameter(field)
click to toggle source
# File lib/kube_queue/job_specification.rb, line 81 def raise_not_found_required_parameter(field) raise MissingParameterError, "#{field} is required" end
resources_exists?()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 77 def resources_exists? @cpu_limit || @memory_limit || @cpu_request || @memory_request end
restart_policy()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 45 def restart_policy @restart_policy || 'Never' end
worker_name()
click to toggle source
# File lib/kube_queue/job_specification.rb, line 33 def worker_name @worker_name || raise_not_found_required_parameter('worker_name') end