Class: HerokuHeadless::Deployer

Inherits:
Object
  • Object
show all
Includes:
DocumentsActions, TalksToHeroku
Defined in:
lib/heroku-headless/deployer.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from TalksToHeroku

#heroku

Methods included from DocumentsActions

#do_action

Constructor Details

#initialize(app_name, uid) ⇒ Deployer

Returns a new instance of Deployer.



14
15
16
17
# File 'lib/heroku-headless/deployer.rb', line 14

def initialize( app_name, uid )
  @app_name = app_name
  @uid = uid
end

Class Method Details

.deploy(app_name) ⇒ Object



10
11
12
# File 'lib/heroku-headless/deployer.rb', line 10

def self.deploy(app_name)
  new(app_name,CreatesUIDs.generate_uid).deploy
end

Instance Method Details

#deployObject



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/heroku-headless/deployer.rb', line 19

def deploy
  prep_temp_dir
  setup_ssh_key
  result = do_action('push git to heroku'){ push_head_to_app }
  result = result && do_action('post_deploy_hooks'){ run_post_deploy_hooks }
  if HerokuHeadless.configuration.restart_processes
    result = result && do_action('restart_processes'){ restart_processes }
  end
  result
ensure
  cleanup
end