class Pushwagner::Main

Public Class Methods

new(opts = {}) click to toggle source
# File lib/pushwagner/main.rb, line 4
def initialize(opts = {})
  begin
    @environment = Pushwagner::Environment.new(opts)
  rescue => e
    Pushwagner.severe e.message
    raise e
  end
end

Public Instance Methods

deploy(opts = {}) click to toggle source
# File lib/pushwagner/main.rb, line 21
def deploy(opts = {})
  Pushwagner.info "Starting deployment to environment: #{@environment.current}"
  @environment.hosts.each { |h| Pushwagner.info "  - #{@environment.user}@#{h}" }
  
  pw_hooks = Hooks.new(@environment)
  pw_hooks.run(:before)

  Maven::Deployer.new(@environment, opts).deploy if @environment.maven?
  Static::Deployer.new(@environment, opts).deploy if @environment.static?

  pw_hooks.run(:after)
end
set_environment(env) click to toggle source
# File lib/pushwagner/main.rb, line 13
def set_environment(env)
  @environment.current = env.to_s
end
set_version(version) click to toggle source
# File lib/pushwagner/main.rb, line 17
def set_version(version)
  @environment.version = version.to_s
end