class ElasticDot::Command::Apps
Public Class Methods
create(args, opts)
click to toggle source
# File lib/elasticdot/command/apps.rb, line 2 def self.create(args, opts) info = api.post '/domains', domain: args[0] if info['error'] puts info['error'] exit 1 end puts "Creating app #{info['app_name']}... done" puts "http://#{info['app_name']}.elasticdot.io/ | #{info['app_repo']}" create_git_remote 'elasticdot', info['app_repo'] end
destroy(opts)
click to toggle source
# File lib/elasticdot/command/apps.rb, line 27 def self.destroy(opts) find_app! opts spinner "Destroying app #{@app}..." do api.delete "/domains/#{@app}" end end
info(opts)
click to toggle source
# File lib/elasticdot/command/apps.rb, line 35 def self.info(opts) find_app! opts h = api.get "/domains/#{@app}" puts "=== #{@app}" puts puts "Git URL:\t#{h['git_repo']}" puts "Owner Email:\t#{h['owner_email']}" puts "Region:\t\tEU" # puts "Slug Size:\t#{h['slug_size']}" puts "Web URL:\thttp://#{h['live_address']}" return unless (db = h['db']) puts puts "=== Database #{db['identifier']}" puts "Plan: \t#{db['plan']['name']}" puts "Nodes: \t#{db['plan']['nodes']}" unless db['plan']['shared'] puts "Version: \t#{db['version']}" puts "Status: \t#{db['status']}" puts "Name: \t#{db['name']}" puts "User: \t#{db['user']}" puts "Password: \t#{db['pass']}" puts "URI: \t#{db['uri']}" puts "Tables: \t#{db['tables']}" puts "Disk Space Used:\t#{db['space_used']}" puts "AVG CPU Load: \t#{db['cpu_load']}" puts "Created at: \t#{db['created_at']}" end
list()
click to toggle source
# File lib/elasticdot/command/apps.rb, line 66 def self.list apps = api.get "/apps?type=web" puts '=== My Apps' apps.each { |app| puts app } end
open(opts)
click to toggle source
# File lib/elasticdot/command/apps.rb, line 16 def self.open(opts) require 'launchy' find_app! opts spinner "Opening #{@app}..." do info = api.get "/domains/#{@app}" Launchy.open info['live_address'] end end