lib/arsenicum/main.rb in arsenicum-0.1.3 vs lib/arsenicum/main.rb in arsenicum-0.2

- old
+ new

@@ -1,27 +1,25 @@ module Arsenicum - module Main - def run(config_file) + class Main + def run(config) $0 = 'arsenicum[main]' - config = Arsenicum::Configuration.new - config_file = File.expand_path config_file - - script = File.read config_file - config.instance_eval script, config_file, 1 - if config.daemon Process.daemon true, true File.open(config.pidfile_path, 'w:UTF-8') do |f| f.puts $$ end end + Dir.chdir config.working_directory + configure_io config configure_log config + before_boot(config) + threads = config.queue_configurations.map{|qc|qc.build.start_async} begin threads.each(&:join) rescue Interrupt end @@ -38,12 +36,14 @@ $stderr = File.open(config.stderr_path, 'a:UTF-8') end end end + def before_boot(config);end + def configure_log(config) Arsenicum::Logger.configure config.logger_config end - module_function :run, :configure_io, :configure_log + autoload :RailsMain, 'arsenicum/main/rails_main' end end