Module: KubeQueue::Worker
- Defined in:
- lib/kube_queue/worker.rb,
lib/kube_queue/worker/dsl.rb
Defined Under Namespace
Modules: ClassMethods, DSL
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Instance Attribute Details
#arguments ⇒ Object
Also known as:
payload
Returns the value of attribute arguments.
99
100
101
|
# File 'lib/kube_queue/worker.rb', line 99
def arguments
@arguments
end
|
#job_id ⇒ Object
Returns the value of attribute job_id.
98
99
100
|
# File 'lib/kube_queue/worker.rb', line 98
def job_id
@job_id
end
|
#resource ⇒ Object
Returns the value of attribute resource.
99
100
101
|
# File 'lib/kube_queue/worker.rb', line 99
def resource
@resource
end
|
#scheduled_at ⇒ Object
Returns the value of attribute scheduled_at.
98
99
100
|
# File 'lib/kube_queue/worker.rb', line 98
def scheduled_at
@scheduled_at
end
|
Instance Method Details
#initialize(*arguments) ⇒ Object
103
104
105
106
107
108
109
110
111
112
113
114
|
# File 'lib/kube_queue/worker.rb', line 103
def initialize(*arguments)
if method(__method__).super_method.arity.zero?
super()
else
super
end
@arguments = arguments
@job_id = SecureRandom.uuid
@loaded = false
end
|
#job_spec ⇒ Object
94
95
96
|
# File 'lib/kube_queue/worker.rb', line 94
def job_spec
self.class.job_spec
end
|
#loaded? ⇒ Boolean
135
136
137
|
# File 'lib/kube_queue/worker.rb', line 135
def loaded?
@loaded
end
|
123
124
125
|
# File 'lib/kube_queue/worker.rb', line 123
def perform(*)
raise NotImplementedError
end
|
116
117
118
119
120
121
|
# File 'lib/kube_queue/worker.rb', line 116
def perform_now
return super if defined?(super)
perform(*arguments)
end
|
#read_template ⇒ Object
90
91
92
|
# File 'lib/kube_queue/worker.rb', line 90
def read_template
self.class.read_template
end
|
#reload! ⇒ Object
139
140
141
142
143
144
|
# File 'lib/kube_queue/worker.rb', line 139
def reload!
@loaded = false
@resource = nil
load_target
end
|
#serialized_payload ⇒ Object
156
157
158
159
160
161
162
|
# File 'lib/kube_queue/worker.rb', line 156
def serialized_payload
if defined?(ActiveJob::Arguments)
ActiveJob::Arguments.serialize(arguments)
else
arguments
end
end
|
#status ⇒ Object
127
128
129
130
131
132
133
|
# File 'lib/kube_queue/worker.rb', line 127
def status
return @resource.status if loaded?
load_target
@resource.status
end
|