Class: HerokuApp

Inherits:
Object
  • Object
show all
Includes:
Rake::DSL
Defined in:
lib/ggake/heroku.rb

Instance Method Summary collapse

Methods included from Rake::DSL

#cloud_cp, #coffee, #dbdeploy, #foreman, #haml_template, #heroku, #heroku_config_get, #transient, #upload_sub_dir

Constructor Details

#initialize(name, heroku_name = nil) ⇒ HerokuApp

Returns a new instance of HerokuApp.



30
31
32
33
# File 'lib/ggake/heroku.rb', line 30

def initialize(name, heroku_name = nil)
  @name, @heroku_name = name, heroku_name
  @heroku_name ||= @name
end

Instance Method Details

#config(var) ⇒ Object



53
54
55
# File 'lib/ggake/heroku.rb', line 53

def config(var)
  heroku_config_get(var, @heroku_name)
end

#deploy_jar(jar_file, opts) ⇒ Object



47
48
49
50
51
# File 'lib/ggake/heroku.rb', line 47

def deploy_jar(jar_file, opts)
  option_string = ''
  option_string = "--options #{opts.join(' ')}" unless opts.empty?
  heroku "deploy:jar --jar #{jar_file} #{option_string} --app #{@heroku_name}"
end

#package(artefact) ⇒ Object



35
36
37
38
39
40
41
# File 'lib/ggake/heroku.rb', line 35

def package(artefact)
  "package/#{@name}".tap do |pkg_dir|
    mkdir_p pkg_dir
    cp "heroku/Procfile.#{@name}", "#{pkg_dir}/Procfile"
    cp artefact, pkg_dir
  end
end

#pushObject



43
44
45
# File 'lib/ggake/heroku.rb', line 43

def push
  heroku "push package/#{@name} --app #{@heroku_name}"
end