Sha256: d06b9aa22c60c4cc2276489fecb378b3e2e9e745ee124200f5f2190282bf5c1b

Contents?: true

Size: 1005 Bytes

Versions: 2

Compression:

Stored size: 1005 Bytes

Contents

class AppCreator
  def self.get_config
    RemoteAsset.class_variables.inject({}) do |carry, e| 
      carry.merge!({e => RemoteAsset.send(:class_variable_get, e)})
    end
  end

  def self.create
    user = ENV['HEROKU_USERNAME']
    pass = ENV['HEROKU_PASSWORD']
    
    server = RemoteAsset.send(:class_variable_get, :@@server)
    url = "http://#{user}:#{pass}@#{server}/heroku/resources"

    response = RestClient.post url, :plan => 'test', :heroku_id => 123 
    json = JSON.parse response

    user = json['config']['TRACKMAN_USER']
    pass = json['config']['TRACKMAN_PASSWORD']
    id = json['id']
    site = "http://#{user}:#{pass}@#{server}/heroku/resources/#{id}/assets"
    

    [[:@@user,user], [:@@pass, pass], [:@@app_id, id], [:@@site, site]].each do |s, v| 
      RemoteAsset.send(:class_variable_set, s, v)
    end

    get_config
  end

  def self.reset
    @@old_config.each do |k,v|
      RemoteAsset.send(:class_variable_set, k, v)
    end
  end

  @@old_config = get_config
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
trackman-0.1.1 spec/helpers/app_creator.rb
trackman-0.1.0 spec/helpers/app_creator.rb