class HerokuRails::HerokuTargets::HerokuTarget

Attributes

name[R]

Public Class Methods

new(values_hash, name = nil) click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 50
def initialize(values_hash, name = nil)
  @values = values_hash.symbolize_keys.freeze
  @name = name.to_sym if name
  %i[heroku_app git_remote deploy_ref].each do |required_name|
    raise required_value(required_name) unless @values[required_name] || local?
  end
end

Public Instance Methods

database_url() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 78
def database_url
  @values[:database_url]
end
db_color() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 90
def db_color
  @values[:db_color] || "DATABASE"
end
deploy_ref() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 86
def deploy_ref
  @values[:deploy_ref]
end
display_name() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 70
def display_name
  @values[:display_name] || @values[:heroku_app]
end
dump_filename() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 102
def dump_filename
  File.expand_path("tmp/latest_#{heroku_app}_backup.dump")
end
git_remote() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 82
def git_remote
  @values[:git_remote]
end
heroku_app() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 74
def heroku_app
  @values[:heroku_app]
end
local?() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 66
def local?
  false
end
repository() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 94
def repository
  @values[:repository] || raise(required_value(:repository))
end
required_value(required_name) click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 58
def required_value(required_name)
  ArgumentError.new("please specify '#{required_name}:' ")
end
staging?() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 62
def staging?
  @values[:staging]
end
to_s() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 98
def to_s
  display_name
end
trackable_release_stage() click to toggle source
# File lib/heroku_rails/heroku_targets.rb, line 106
def trackable_release_stage
  @values[:trackable_release_stage].presence || (staging? ? "staging" : "production")
end