class Falcon::Command::Host
Implements the `falcon host` command. Designed for deployment.
Manages a {Controller::Host} instance which is responsible for running applications in a production environment.
Public Instance Methods
call()
click to toggle source
Prepare the environment and run the controller.
# File lib/falcon/command/host.rb, line 66 def call Console.logger.info(self) do |buffer| buffer.puts "Falcon Host v#{VERSION} taking flight!" buffer.puts "- Configuration: #{@paths.join(', ')}" buffer.puts "- To terminate: Ctrl-C or kill #{Process.pid}" buffer.puts "- To reload: kill -HUP #{Process.pid}" end begin Bundler.require(:preload) rescue Bundler::GemfileNotFound # Ignore. end if GC.respond_to?(:compact) GC.compact end self.controller.run end
configuration()
click to toggle source
Generate a configuration based on the specified {paths}.
# File lib/falcon/command/host.rb, line 49 def configuration configuration = Configuration.new @paths.each do |path| path = File.expand_path(path) configuration.load_file(path) end return configuration end
container_class()
click to toggle source
The container class to use.
# File lib/falcon/command/host.rb, line 44 def container_class Async::Container.best_container_class end
controller()
click to toggle source
Prepare a new controller for the command.
# File lib/falcon/command/host.rb, line 61 def controller Controller::Host.new(self) end