Class: Hatchet::WorkerContext
- Inherits:
-
Object
- Object
- Hatchet::WorkerContext
- Defined in:
- lib/hatchet/worker_obj.rb
Overview
Provides worker-level operations available from within task contexts
Instance Method Summary collapse
-
#id ⇒ String?
Get the worker ID.
-
#initialize(worker:) ⇒ WorkerContext
constructor
A new instance of WorkerContext.
-
#labels ⇒ Hash
Get current worker labels.
-
#upsert_labels(new_labels) ⇒ Object
Upsert worker labels on the server and update local state.
Constructor Details
#initialize(worker:) ⇒ WorkerContext
Returns a new instance of WorkerContext.
278 279 280 |
# File 'lib/hatchet/worker_obj.rb', line 278 def initialize(worker:) @worker = worker end |
Instance Method Details
#id ⇒ String?
Get the worker ID
284 285 286 |
# File 'lib/hatchet/worker_obj.rb', line 284 def id @worker.worker_id end |
#labels ⇒ Hash
Get current worker labels
290 291 292 |
# File 'lib/hatchet/worker_obj.rb', line 290 def labels @worker.labels end |
#upsert_labels(new_labels) ⇒ Object
Upsert worker labels on the server and update local state.
297 298 299 300 301 302 303 304 305 306 |
# File 'lib/hatchet/worker_obj.rb', line 297 def upsert_labels(new_labels) @worker.labels.merge!(new_labels) return unless @worker.worker_id && @worker.client @worker.client.dispatcher_grpc.upsert_worker_labels( worker_id: @worker.worker_id, labels: new_labels, ) end |