#!/usr/bin/env ruby if ARGV.size == 0 puts ' Usage: controller [ boot | quit ] controller [ start | status | stop | restart | log ] [worker] Example: % controller boot # start bluepilld and jobs % controller status # check on status of jobs % controller log dor_accessionWF_descriptive-metadata # view log for worker % controller stop # stop jobs % controller quit # stop bluepilld ' exit -1 end ENV['ROBOT_ENVIRONMENT'] ||= 'development' cmd = "bluepill --no-privileged" cmd << " --base-dir #{ENV['BLUEPILL_BASE_DIR'] || File.expand_path('run/bluepill')}" cmd << " --logfile #{ENV['BLUEPILL_LOGFILE'] || File.expand_path('log/bluepill.log')}" if ARGV[0] == 'boot' ["config/environments/bluepill_#{ENV['ROBOT_ENVIRONMENT']}.rb", "config/environments/bluepill.rb", "config/bluepill.rb"].each do |fn| if File.file?(fn) system "#{cmd} load #{fn}" exit 0 end end puts "ERROR: Cannot find bluepill configuration file for #{ENV['ROBOT_ENVIRONMENT']}" exit -1 else system "#{cmd} #{ARGV.join(' ')}" end