module Octospy::Configurable

Constants

OPTIONS_KEYS

Public Class Methods

keys() click to toggle source
# File lib/octospy/configurable.rb, line 27
def keys
  @keys ||= OPTIONS_KEYS
end

Public Instance Methods

cinch_config_block(&block) click to toggle source
# File lib/octospy/configurable.rb, line 36
def cinch_config_block(&block)
  @cinch_config_block = block
end
configure() { |self| ... } click to toggle source
# File lib/octospy/configurable.rb, line 32
def configure
  yield self
end
options() click to toggle source
# File lib/octospy/configurable.rb, line 40
def options
  Hash[Octospy::Configurable.keys.map{ |key|
    [key, instance_variable_get(:"@#{key}")]
  }]
end
setup() click to toggle source
# File lib/octospy/configurable.rb, line 46
def setup
  @github_api_endpoint  = ENV['GITHUB_API_ENDPOINT']
  @github_web_endpoint  = ENV['GITHUB_WEB_ENDPOINT']
  @nick                 = ENV['NICK'] || 'octospy'
  @server               = ENV['SERVER']
  @port                 = ENV['PORT']
  @ssl                  = !!ENV['SSL']
  @debug                = !!ENV['DEBUG']
  @daemonize            = !!ENV['DAEMONIZE']
  @sync_log             = "#{ENV['SYNC_LOG'] || true}".to_boolean
  @pid_file             = ENV['PID_FILE'] || default_pid_file
  @log_file             = ENV['LOG_FILE'] || default_log_file
  @password             = ENV['PASSWORD']
  # you can make up to 20 requests per minute.
  # http://developer.github.com/v3/search/#rate-limit
  @api_request_interval = "#{ENV['API_REQUEST_INTERVAL'] || 3}".to_i
  @worker_interval      = "#{ENV['WORKER_INTERVAL'] || 30}".to_i
  @github_login         = ENV['GITHUB_LOGIN']
  @github_token         = ENV['GITHUB_TOKEN']
  @channels             = ENV['CHANNELS'] ? ENV['CHANNELS'].gsub(/\s|#/, '').split(',').
    map { |ch| "##{ch}" } : nil
  @cinch_config_block   = nil
end

Private Instance Methods

default_log_file() click to toggle source
# File lib/octospy/configurable.rb, line 76
def default_log_file
  File.join(File.expand_path('../../../log', __FILE__), "#{@nick}.log")
end
default_pid_file() click to toggle source
# File lib/octospy/configurable.rb, line 72
def default_pid_file
  File.join(File.expand_path('../../../tmp/pids', __FILE__), "#{@nick}")
end