class Vx::Worker::CLI
Public Class Methods
new()
click to toggle source
# File lib/vx/worker/cli.rb, line 13 def initialize @options = {} parse! Worker.initialize! end
Public Instance Methods
run()
click to toggle source
# File lib/vx/worker/cli.rb, line 19 def run trap('INT') { Thread.new do Vx::Common::AMQP.shutdown end.join } Vx::Common::AMQP::Supervisor::Threaded.build( Vx::Worker::JobsConsumer => config.workers, ).run end
Private Instance Methods
parse!()
click to toggle source
# File lib/vx/worker/cli.rb, line 33 def parse! OptionParser.new do |opts| opts.banner = "Usage: vx-worker [options]" opts.on("-w", "--workers NUM", "Number of workers, default 1") do |v| @options[:workers] = v.to_i end opts.on("-p", "--path PATH", "Working directory, default current directory") do |v| @options[:path_prefix] = v.to_s end opts.on("-c", "--config FILE", "Path to configuration file, default /etc/vexor/ci") do |v| @options[:config] = v end end.parse! read_env_file @options.delete(:config) @options.each_pair do |k,v| config.public_send("#{k}=", v) end end