Class: Falcon::Service

Inherits:
Object
  • Object
show all
Defined in:
lib/falcon/service.rb

Direct Known Subclasses

Host

Instance Method Summary collapse

Constructor Details

#initialize(environment) ⇒ Service

Returns a new instance of Service.



32
33
34
35
# File 'lib/falcon/service.rb', line 32

def initialize(environment)
	@environment = environment
	@evaluator = @environment.evaluator
end

Instance Method Details

#nameObject



37
38
39
# File 'lib/falcon/service.rb', line 37

def name
	@evaluator.name
end

#run(container) ⇒ Object



41
42
43
44
45
46
47
48
49
50
51
# File 'lib/falcon/service.rb', line 41

def run(container)
	container.run(name: self.name, count: 1, restart: true) do |task, instance|
		Async.logger.info(self) {"Starting #{self.name}..."}
		
		if service = @evaluator.service
			service.run
		else
			Async.logger.error(self) {"Could not determine how to start service: #{@environment.inspect}"}
		end
	end
end