Class: JobBoss::Config
- Inherits:
-
Object
- Object
- JobBoss::Config
- Defined in:
- lib/job_boss/config.rb
Instance Attribute Summary collapse
-
#application_root ⇒ Object
Returns the value of attribute application_root.
-
#database_yaml_path ⇒ Object
Returns the value of attribute database_yaml_path.
-
#employee_limit ⇒ Object
Returns the value of attribute employee_limit.
-
#environment ⇒ Object
Returns the value of attribute environment.
-
#jobs_path ⇒ Object
Returns the value of attribute jobs_path.
-
#log_path ⇒ Object
Returns the value of attribute log_path.
-
#sleep_interval ⇒ Object
Returns the value of attribute sleep_interval.
Instance Method Summary collapse
Instance Attribute Details
#application_root ⇒ Object
Returns the value of attribute application_root.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def application_root @application_root end |
#database_yaml_path ⇒ Object
Returns the value of attribute database_yaml_path.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def database_yaml_path @database_yaml_path end |
#employee_limit ⇒ Object
Returns the value of attribute employee_limit.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def employee_limit @employee_limit end |
#environment ⇒ Object
Returns the value of attribute environment.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def environment @environment end |
#jobs_path ⇒ Object
Returns the value of attribute jobs_path.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def jobs_path @jobs_path end |
#log_path ⇒ Object
Returns the value of attribute log_path.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def log_path @log_path end |
#sleep_interval ⇒ Object
Returns the value of attribute sleep_interval.
5 6 7 |
# File 'lib/job_boss/config.rb', line 5 def sleep_interval @sleep_interval end |
Instance Method Details
#parse_args(argv, options = {}) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/job_boss/config.rb', line 7 def parse_args(argv, = {}) @application_root = File.(ENV['JB_APPLICATION_ROOT'] || [:working_dir] || Dir.pwd) @database_yaml_path = ENV['JB_DATABASE_YAML_PATH'] || 'config/database.yml' @log_path = ENV['JB_LOG_PATH'] || 'log/job_boss.log' @jobs_path = ENV['JB_JOBS_PATH'] || 'app/jobs' @sleep_interval = ENV['JB_SLEEP_INTERVAL'].blank? ? 0.5 : ENV['JB_SLEEP_INTERVAL'].to_f @employee_limit = ENV['JB_EMPLOYEE_LIMIT'].blank? ? 4 : ENV['JB_EMPLOYEE_LIMIT'].to_i @environment = ENV['JB_ENVIRONMENT'] || ENV['RAILS_ENV'] || 'development' require 'optparse' OptionParser.new do |opts| opts. = "Usage: job_boss [start|stop|restart|run|zap] [-- <options>]" opts.on("-r", "--application-root PATH", "Path for the application root upon which other paths depend (defaults to .) Environment variable: JB_APPLICATION_ROOT") do |path| @application_root = File.(path) end opts.on("-d", "--database-yaml PATH", "Path for database YAML (defaults to <application-root>/#{@database_yaml_path}) Environment variable: JB_DATABASE_YAML_PATH") do |path| @database_yaml_path = path end opts.on("-l", "--log-path PATH", "Path for log file (defaults to <application-root>/#{@log_path}) Environment variable: JB_LOG_PATH") do |path| @log_path = path end opts.on("-j", "--jobs-path PATH", "Path to folder with job classes (defaults to <application-root>/#{@jobs_path}) Environment variable: JB_JOBS_PATH") do |path| @jobs_path = path end opts.on("-e", "--environment ENV", "Environment to use in database YAML file (defaults to '#{@environment}') Environment variable: JB_ENVIRONMENT") do |env| @environment = env end opts.on("-s", "--sleep-interval INTERVAL", Integer, "Number of seconds for the boss to sleep between checks of the queue (default #{@sleep_interval}) Environment variable: JB_SLEEP_INTERVAL") do |interval| @sleep_interval = interval end opts.on("-c", "--employee-limit LIMIT", Integer, "Maximum number of employees (default 4) Environment variable: JB_EMPLOYEE_LIMIT") do |limit| @employee_limit = limit end end.parse!(argv) end |