Module: ServiceSkeleton::UltravisorChildren

Defined in:
lib/service_skeleton/ultravisor_children.rb

Instance Method Summary collapse

Instance Method Details

#register_ultravisor_children(ultravisor, config:, metrics_registry:) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/service_skeleton/ultravisor_children.rb', line 5

def register_ultravisor_children(ultravisor, config:, metrics_registry:)
  begin
    ultravisor.add_child(
      id: self.service_name.to_sym,
      klass: self,
      method: :run,
      args: [config: config, metrics: metrics_registry],
      access: :unsafe
    )
  rescue Ultravisor::InvalidKAMError
    raise ServiceSkeleton::Error::InvalidServiceClassError,
          "Class #{self.to_s} does not implement the `run' instance method"
  end
end