Sha256: c3d7a1052b4501bb3bbdf61df3369cceccf914efb00c46ee0b4ee33560ab39fa
Contents?: true
Size: 1.72 KB
Versions: 3
Compression:
Stored size: 1.72 KB
Contents
module ORS module Config mattr_accessor :name, :environment, :use_gateway, :pretending, :log_lines, :rails2 self.environment = "production" self.pretending = false self.use_gateway = true self.log_lines = 100 module ModuleMethods def parse_options options self.name = name_from_git self.environment = options.shift unless options.empty? or options.first.match(/^-/) options.each do |option| case option when "-p", "--pretend" then self.pretending = true when "-ng", "--no-gateway" then self.use_gateway = false end end end def valid_options? name.to_s.size > 0 and valid_environments.include?(environment) end def valid_environments %w(production demo staging) end private def name_from_git git.config["remote.origin.url"].gsub /.*?:(.*?).git/, '\1' end def git @git ||= Git.open(Dir.pwd) end end extend ModuleMethods def gateway "deploy-gateway" end def deploy_user "deployer" end def repo "ors_git" end def base_path "/var/www" end def web_servers %w(koala) end def app_servers %w(eel jellyfish squid) end def migration_server "tuna" end def console_server "tuna" end def ruby_servers app_servers + [migration_server] end def all_servers web_servers + app_servers + [migration_server] end def deploy_directory directory = File.join base_path, name if environment == "production" directory else "#{directory}_#{environment}" end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ors-0.0.9 | lib/ors/config.rb |
ors-0.0.8 | lib/ors/config.rb |
ors-0.0.7 | lib/ors/config.rb |