Sha256: 7b98f607864b1c21d31840ed03a0716265afb4df47aefc25176621a8a76650f2

Contents?: true

Size: 616 Bytes

Versions: 2

Compression:

Stored size: 616 Bytes

Contents

module Aviator

  define_request :root do

    meta :provider,      :openstack
    meta :service,       :compute
    meta :api_version,   :v2
    meta :endpoint_type, :public

    def headers
      h = {}

      unless self.anonymous?
        h['X-Auth-Token'] = session_data[:access][:token][:id]
      end

      h
    end


    def http_method
      :get
    end


    def url
      service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s }
      uri = URI(service_spec[:endpoints][0][:publicURL])
      "#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v2/"
    end

  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
aviator-0.0.5 lib/aviator/openstack/compute/v2/public/root.rb
aviator-0.0.4 lib/aviator/openstack/compute/v2/public/root.rb