class Qtc::Cli::Mar::Base

Protected Instance Methods

client() click to toggle source

@return [Qtc::Client]

# File lib/qtc/cli/mar/base.rb, line 39
def client
  if @client.nil?
    @client = Qtc::Client.new(base_url)
  end

  @client
end
resolve_datacenter_id(instance_id) click to toggle source

@param [String] instance_id @return [String,NilClass]

# File lib/qtc/cli/mar/base.rb, line 30
def resolve_datacenter_id(instance_id)
  match = instance_id.to_s.match(/^(mar-\w+-\w+)-\w+/)
  if match[1]
    match[1]
  end
end
resolve_instance_id(options) click to toggle source
# File lib/qtc/cli/mar/base.rb, line 12
def resolve_instance_id(options)
  if options.app.nil?
    instance_id = extract_app_in_dir(options.remote)
  else
    instance_id = options.app
  end
  if instance_id.nil?
    raise ArgumentError.new('Cannot resolve current app, please use --app APP')
  end

  self.datacenter_id = resolve_datacenter_id(instance_id)

  instance_id
end

Private Instance Methods

base_url() click to toggle source
# File lib/qtc/cli/mar/base.rb, line 49
def base_url
  datacenters = inifile['datacenters'] || {}
  if !self.datacenter_id.nil? && datacenters.has_key?(self.datacenter_id)
    "#{datacenters[self.datacenter_id]}/v1"
  else
    raise ArgumentError.new('Unknown datacenter. Please run qtc-cli datacenters to get latest list of your datacenters')
  end
end