Merge pull request #67 from relaxdiego/fix/65
This merge adds the ability for the client to specify a base_url for the request. This is useful in situations where the session in use is based on a default token which does not have any service catalog.
This commit is contained in:
@@ -35,6 +35,23 @@ module Aviator
|
||||
end
|
||||
|
||||
|
||||
class MissingServiceEndpointError < StandardError
|
||||
def initialize(service_name, request_name)
|
||||
request_name = request_name.to_s.split('::').last.underscore
|
||||
super "The session's service catalog does not have an entry for the #{ service_name } "\
|
||||
"service. Therefore, I don't know to which base URL the request should be sent. "\
|
||||
"This may be because you are using a default or unscoped token. If this is not your "\
|
||||
"intention, please authenticate with a scoped token. If using a default token is your "\
|
||||
"intention, make sure to provide a base url when you call the request. For example: \n\n"\
|
||||
"session.#{ service_name }_service.request :#{ request_name }, base_url: 'http://myenv.com:9999/v2.0' do |params|\n"\
|
||||
" params[:example1] = 'example1'\n"\
|
||||
" params[:example2] = 'example2'\n"\
|
||||
"end\n\n"
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
||||
class Logger < Faraday::Response::Logger
|
||||
def initialize(app, logger=nil)
|
||||
super(app)
|
||||
@@ -67,6 +84,10 @@ module Aviator
|
||||
session_data = options[:session_data] || default_session_data
|
||||
|
||||
raise SessionDataNotProvidedError.new unless session_data
|
||||
|
||||
[:base_url].each do |k|
|
||||
session_data[k] = options[k] if options[k]
|
||||
end
|
||||
|
||||
request_class = find_request(request_name, session_data, options[:endpoint_type])
|
||||
|
||||
@@ -119,11 +140,11 @@ module Aviator
|
||||
namespace = Aviator.const_get(provider.camelize)
|
||||
.const_get(service.camelize)
|
||||
|
||||
version = infer_version(session_data).to_s.camelize
|
||||
version = infer_version(session_data, name).to_s.camelize
|
||||
|
||||
return nil unless version && namespace.const_defined?(version)
|
||||
|
||||
namespace = namespace.const_get(version)
|
||||
namespace = namespace.const_get(version, name)
|
||||
|
||||
endpoint_types.each do |endpoint_type|
|
||||
name = name.to_s.camelize
|
||||
@@ -139,7 +160,7 @@ module Aviator
|
||||
|
||||
|
||||
# Candidate for extraction to aviator/openstack
|
||||
def infer_version(session_data)
|
||||
def infer_version(session_data, request_name='sample_request')
|
||||
if session_data.has_key?(:auth_service) && session_data[:auth_service][:api_version]
|
||||
session_data[:auth_service][:api_version].to_sym
|
||||
|
||||
@@ -147,8 +168,13 @@ module Aviator
|
||||
m = session_data[:auth_service][:host_uri].match(/(v\d+)\.?\d*/)
|
||||
return m[1].to_sym unless m.nil?
|
||||
|
||||
elsif session_data.has_key? :base_url
|
||||
m = session_data[:base_url].match(/(v\d+)\.?\d*/)
|
||||
return m[1].to_sym unless m.nil?
|
||||
|
||||
elsif session_data.has_key? :access
|
||||
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service }
|
||||
raise MissingServiceEndpointError.new(service.to_s, request_name) unless service_spec
|
||||
version = service_spec[:endpoints][0][:publicURL].match(/(v\d+)\.?\d*/)
|
||||
version ? version[1].to_sym : :v1
|
||||
end
|
||||
|
@@ -16,9 +16,15 @@ module Aviator
|
||||
|
||||
private
|
||||
|
||||
|
||||
def base_url_for(endpoint_type)
|
||||
service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s }
|
||||
service_spec[:endpoints][0]["#{ endpoint_type }URL".to_sym]
|
||||
if session_data[:base_url]
|
||||
session_data[:base_url]
|
||||
else
|
||||
service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s }
|
||||
raise Aviator::Service::MissingServiceEndpointError.new(service.to_s, self.class) unless service_spec
|
||||
service_spec[:endpoints][0]["#{ endpoint_type }URL".to_sym]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
|
@@ -74,6 +74,24 @@ class Aviator::Test
|
||||
end
|
||||
|
||||
|
||||
it 'raises an error if session data does not have the endpoint information' do
|
||||
request_name = config[:auth_service][:request].to_sym
|
||||
|
||||
bootstrap = JSON.parse('{"access": {"token": {"issued_at": "2013-09-25T20:21:55.453783",
|
||||
"expires": "2013-09-26T02:21:55Z", "id": "2f6bdec6cd0f49b4a60ede0cd4bf2c0d"},
|
||||
"serviceCatalog": [], "user": {"username": "bogus",
|
||||
"roles_links": [], "id": "447527294dae4a1788d36beb0db99c00", "roles": [],
|
||||
"name": "bogus"}, "metadata": {"is_admin": 0, "roles":
|
||||
[]}}}').with_indifferent_access
|
||||
|
||||
s = service(bootstrap)
|
||||
|
||||
the_method = lambda { s.request request_name }
|
||||
|
||||
the_method.must_raise Aviator::Service::MissingServiceEndpointError
|
||||
end
|
||||
|
||||
|
||||
it 'can find the correct request based on non-bootstrapped session data' do
|
||||
session_data = do_auth_request.body
|
||||
|
||||
|
109
test/aviator/openstack/common/v2/public/base_test.rb
Normal file
109
test/aviator/openstack/common/v2/public/base_test.rb
Normal file
@@ -0,0 +1,109 @@
|
||||
require 'test_helper'
|
||||
|
||||
class Aviator::Test
|
||||
|
||||
describe 'aviator/openstack/common/v2/public/base' do
|
||||
|
||||
def create_request(session_data = get_session_data, &block)
|
||||
block ||= lambda do |params|
|
||||
params[:tenant_id] = 0
|
||||
params[:role_id] = 0
|
||||
params[:user_id] = 0
|
||||
end
|
||||
|
||||
klass.new(session_data, &block)
|
||||
end
|
||||
|
||||
|
||||
def get_session_data
|
||||
session.send :auth_info
|
||||
end
|
||||
|
||||
|
||||
def helper
|
||||
Aviator::Test::RequestHelper
|
||||
end
|
||||
|
||||
|
||||
def klass
|
||||
@klass ||= helper.load_request('openstack', 'common', 'v2', 'public', 'base.rb')
|
||||
end
|
||||
|
||||
|
||||
def session
|
||||
unless @session
|
||||
@session = Aviator::Session.new(
|
||||
config_file: Environment.path,
|
||||
environment: 'openstack_admin'
|
||||
)
|
||||
@session.authenticate
|
||||
end
|
||||
|
||||
@session
|
||||
end
|
||||
|
||||
|
||||
validate_attr :anonymous? do
|
||||
klass.anonymous?.must_equal false
|
||||
end
|
||||
|
||||
|
||||
validate_attr :api_version do
|
||||
klass.api_version.must_equal :v2
|
||||
end
|
||||
|
||||
|
||||
validate_attr :endpoint_type do
|
||||
klass.endpoint_type.must_equal :public
|
||||
end
|
||||
|
||||
|
||||
validate_attr :headers do
|
||||
headers = { 'X-Auth-Token' => get_session_data[:access][:token][:id] }
|
||||
|
||||
request = create_request
|
||||
|
||||
request.headers.must_equal headers
|
||||
end
|
||||
|
||||
|
||||
describe '::base_url_for' do
|
||||
|
||||
it 'must throw a MissingServiceEndpointError when the service\'s endpoint can\'t be found' do
|
||||
default_session_data = JSON.parse('{"access": {"token": {"issued_at": "2013-09-25T20:21:55.453783",
|
||||
"expires": "2013-09-26T02:21:55Z", "id": "2f6bdec6cd0f49b4a60ede0cd4bf2c0d"},
|
||||
"serviceCatalog": [], "user": {"username": "bogus",
|
||||
"roles_links": [], "id": "447527294dae4a1788d36beb0db99c00", "roles": [],
|
||||
"name": "bogus"}, "metadata": {"is_admin": 0, "roles":
|
||||
[]}}}').with_indifferent_access
|
||||
|
||||
request = klass.new(default_session_data)
|
||||
|
||||
the_method = lambda { request.send(:base_url_for, :public) }
|
||||
|
||||
the_method.must_raise Aviator::Service::MissingServiceEndpointError
|
||||
end
|
||||
|
||||
|
||||
it 'must use the base_url value if provided.' do
|
||||
default_session_data = JSON.parse('{"access": {"token": {"issued_at": "2013-09-25T20:21:55.453783",
|
||||
"expires": "2013-09-26T02:21:55Z", "id": "2f6bdec6cd0f49b4a60ede0cd4bf2c0d"},
|
||||
"serviceCatalog": [], "user": {"username": "bogus",
|
||||
"roles_links": [], "id": "447527294dae4a1788d36beb0db99c00", "roles": [],
|
||||
"name": "bogus"}, "metadata": {"is_admin": 0, "roles":
|
||||
[]}}}').with_indifferent_access
|
||||
|
||||
base_url = 'http://sample'
|
||||
|
||||
default_session_data.merge!({ base_url: base_url })
|
||||
|
||||
request = klass.new(default_session_data)
|
||||
|
||||
request.send(:base_url_for, :public).must_equal base_url
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
end
|
131
test/aviator/openstack/identity/v2/public/list_tenants_test.rb
Normal file
131
test/aviator/openstack/identity/v2/public/list_tenants_test.rb
Normal file
@@ -0,0 +1,131 @@
|
||||
require 'test_helper'
|
||||
|
||||
class Aviator::Test
|
||||
|
||||
describe 'aviator/openstack/identity/v2/public/list_tenants' do
|
||||
|
||||
def create_request(session_data = get_session_data, &block)
|
||||
klass.new(session_data, &block)
|
||||
end
|
||||
|
||||
|
||||
def get_session_data
|
||||
session.send :auth_info
|
||||
end
|
||||
|
||||
|
||||
def helper
|
||||
Aviator::Test::RequestHelper
|
||||
end
|
||||
|
||||
|
||||
def klass
|
||||
@klass ||= helper.load_request('openstack', 'identity', 'v2', 'public', 'list_tenants.rb')
|
||||
end
|
||||
|
||||
|
||||
def session
|
||||
unless @session
|
||||
@session = Aviator::Session.new(
|
||||
config_file: Environment.path,
|
||||
environment: 'openstack_admin'
|
||||
)
|
||||
@session.authenticate
|
||||
end
|
||||
|
||||
@session
|
||||
end
|
||||
|
||||
|
||||
validate_attr :anonymous? do
|
||||
klass.anonymous?.must_equal false
|
||||
end
|
||||
|
||||
|
||||
validate_attr :api_version do
|
||||
klass.api_version.must_equal :v2
|
||||
end
|
||||
|
||||
|
||||
validate_attr :body do
|
||||
klass.body?.must_equal false
|
||||
create_request.body?.must_equal false
|
||||
end
|
||||
|
||||
|
||||
validate_attr :endpoint_type do
|
||||
klass.endpoint_type.must_equal :public
|
||||
end
|
||||
|
||||
|
||||
validate_attr :headers do
|
||||
session_data = get_session_data
|
||||
|
||||
headers = { 'X-Auth-Token' => session_data[:access][:token][:id] }
|
||||
|
||||
request = create_request(session_data)
|
||||
|
||||
request.headers.must_equal headers
|
||||
end
|
||||
|
||||
|
||||
validate_attr :http_method do
|
||||
create_request.http_method.must_equal :get
|
||||
end
|
||||
|
||||
|
||||
validate_attr :url do
|
||||
session_data = get_session_data
|
||||
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == 'identity' }
|
||||
url = "#{ service_spec[:endpoints][0][:publicURL] }/tenants"
|
||||
request = klass.new(session_data)
|
||||
|
||||
request.url.must_equal url
|
||||
end
|
||||
|
||||
|
||||
validate_response 'no parameters are provided' do
|
||||
service = session.identity_service
|
||||
|
||||
response = service.request :list_tenants
|
||||
|
||||
response.status.must_equal 200
|
||||
response.body.wont_be_nil
|
||||
response.body[:tenants].length.wont_equal 0
|
||||
response.headers.wont_be_nil
|
||||
end
|
||||
|
||||
|
||||
validate_response 'session is using a default token' do
|
||||
s = Aviator::Session.new(
|
||||
config_file: Environment.path,
|
||||
environment: 'openstack_admin'
|
||||
)
|
||||
|
||||
s.authenticate do |creds|
|
||||
creds.username = Environment.openstack_member[:auth_credentials][:username]
|
||||
creds.password = Environment.openstack_member[:auth_credentials][:password]
|
||||
end
|
||||
|
||||
base_url = URI(Environment.openstack_admin[:auth_service][:host_uri])
|
||||
|
||||
api_version = Environment.openstack_admin[:auth_service][:api_version]
|
||||
|
||||
if api_version
|
||||
base_url.path = (api_version == 'v2' ? '/v2.0' : "/#{ api_version }")
|
||||
end
|
||||
|
||||
# base_url should have the form 'https://<domain>:<port>/<api_version>'
|
||||
|
||||
response = s.identity_service.request :list_tenants, base_url: base_url.to_s
|
||||
|
||||
response.status.must_equal 200
|
||||
response.body.wont_be_nil
|
||||
response.body[:tenants].length.wont_equal 0
|
||||
response.headers.wont_be_nil
|
||||
end
|
||||
|
||||
|
||||
end
|
||||
|
||||
end
|
@@ -0,0 +1,62 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_ADMIN_USERNAME>","password":"<OPENSTACK_ADMIN_PASSWORD>"},"tenantName":"<OPENSTACK_ADMIN_TENANTNAME>"}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '2649'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 20:21:00 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T20:21:00.599676",
|
||||
"expires": "2013-09-26T02:21:00Z", "id": "695465ba44f34e32b008250b7a92e4e9",
|
||||
"tenant": {"description": "Used for Aviator testing/development", "enabled":
|
||||
true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"}},
|
||||
"serviceCatalog": [{"endpoints": [{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"id": "6bb597a3738045f4b2c51a7702037cab", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:9292", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:9292",
|
||||
"id": "2985945e07b74103bb2dfef7e426cd43", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:9292"}],
|
||||
"endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:8777", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8777",
|
||||
"id": "370119dd80e84894bfe83d766fd467dd", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8777"}],
|
||||
"endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"id": "2492a6f5fa80466d9312e51a8f79b638", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Admin", "region":
|
||||
"RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud",
|
||||
"id": "1f68f3ce931946c788e487443e772fb2", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud"}],
|
||||
"endpoints_links": [], "type": "ec2", "name": "nova_ec2"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:35357/v2.0", "region": "RegionOne", "internalURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0", "id": "12c722e9b9fb471fbea83c6157c0123a",
|
||||
"publicURL": "<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0"}], "endpoints_links":
|
||||
[], "type": "identity", "name": "keystone"}], "user": {"username": "<OPENSTACK_ADMIN_USERNAME>",
|
||||
"roles_links": [], "id": "3cb44449b3cb48519641864ca82d1911", "roles": [{"name":
|
||||
"admin"}], "name": "<OPENSTACK_ADMIN_USERNAME>"}, "metadata": {"is_admin":
|
||||
0, "roles": ["a0d6ba8f41b746b495a6d25c69962489"]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 20:21:00 GMT
|
||||
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,143 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_ADMIN_USERNAME>","password":"<OPENSTACK_ADMIN_PASSWORD>"},"tenantName":"<OPENSTACK_ADMIN_TENANTNAME>"}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '2649'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 19:00:22 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T19:00:22.822563",
|
||||
"expires": "2013-09-26T01:00:22Z", "id": "9db5bd6b0022494f8bb97ceea0ce4b68",
|
||||
"tenant": {"description": "Used for Aviator testing/development", "enabled":
|
||||
true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"}},
|
||||
"serviceCatalog": [{"endpoints": [{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"id": "6bb597a3738045f4b2c51a7702037cab", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:9292", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:9292",
|
||||
"id": "2985945e07b74103bb2dfef7e426cd43", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:9292"}],
|
||||
"endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:8777", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8777",
|
||||
"id": "370119dd80e84894bfe83d766fd467dd", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8777"}],
|
||||
"endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"id": "2492a6f5fa80466d9312e51a8f79b638", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Admin", "region":
|
||||
"RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud",
|
||||
"id": "1f68f3ce931946c788e487443e772fb2", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud"}],
|
||||
"endpoints_links": [], "type": "ec2", "name": "nova_ec2"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:35357/v2.0", "region": "RegionOne", "internalURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0", "id": "12c722e9b9fb471fbea83c6157c0123a",
|
||||
"publicURL": "<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0"}], "endpoints_links":
|
||||
[], "type": "identity", "name": "keystone"}], "user": {"username": "<OPENSTACK_ADMIN_USERNAME>",
|
||||
"roles_links": [], "id": "3cb44449b3cb48519641864ca82d1911", "roles": [{"name":
|
||||
"admin"}], "name": "<OPENSTACK_ADMIN_USERNAME>"}, "metadata": {"is_admin":
|
||||
0, "roles": ["a0d6ba8f41b746b495a6d25c69962489"]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 19:00:22 GMT
|
||||
- request:
|
||||
method: get
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tenants
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ''
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
X-Auth-Token:
|
||||
- 9db5bd6b0022494f8bb97ceea0ce4b68
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '4062'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 19:00:23 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"tenants_links": [], "tenants": [{"description": "Description",
|
||||
"enabled": true, "id": "1113967479ea4426a4c80a1b109daee2", "name": "Permanent
|
||||
Project"}, {"description": "", "enabled": true, "id": "1b398a49e78448b3bdb7acf77e584fe5",
|
||||
"name": "alvintest"}, {"description": "Tenant for the openstack services",
|
||||
"enabled": true, "id": "1c386cddb0604535ba1f372a1c971550", "name": "services"},
|
||||
{"description": "My Project", "enabled": true, "id": "25f6138692a5497982e0a9185b6925eb",
|
||||
"name": "Project"}, {"description": "", "enabled": true, "id": "27779ee35855440cbbed49e93bb068f5",
|
||||
"name": "alvintest3"}, {"description": "Used for Aviator testing/development",
|
||||
"enabled": true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"},
|
||||
{"description": "asdf", "enabled": true, "id": "3abf2f47fb194ecc9977362e5d1a8c09",
|
||||
"name": "mmaglana"}, {"description": "testing", "enabled": true, "id": "3ec6ecaff17a41a5bb105a15376c5566",
|
||||
"name": "ninja"}, {"description": "This is a test", "enabled": true, "id":
|
||||
"4170d3aef0ff4fdcb0287496f5eb3a61", "name": "Test Project Too"}, {"description":
|
||||
"My Project", "enabled": true, "id": "47c27e66021546c8b39fe9a2cf0d0935", "name":
|
||||
"Xample"}, {"description": "This is a test", "enabled": true, "id": "5a15648e5483474aa8d6fa13dbe37a4b",
|
||||
"name": "Test Project"}, {"description": "sample", "enabled": true, "id":
|
||||
"646fe18d914745eeae0122a24ea653cc", "name": "newprojtest"}, {"description":
|
||||
"test", "enabled": true, "id": "6bad4d3fe00c43d3ad3c2dcca4ff3eb0", "name":
|
||||
"elmer"}, {"description": "My Project", "enabled": true, "id": "6f2c8fc3dda7430c9c1adbdf8c769b9c",
|
||||
"name": "WWProject"}, {"description": "Test Project", "enabled": true, "id":
|
||||
"713e1b55039d4fd6b91bbeac8914028c", "name": "a_test_project"}, {"description":
|
||||
"", "enabled": true, "id": "763d42422d914f0ca6eab905b85c65c5", "name": "Fonsy
|
||||
Test 1"}, {"description": "lalala", "enabled": true, "id": "7dfb270af41245c4911cce903532cdde",
|
||||
"name": "jason_test"}, {"description": "testing", "enabled": true, "id": "85ea75f214ca4d3f834ca37cc570a8fd",
|
||||
"name": "ann"}, {"description": "test", "enabled": true, "id": "89b89207b57a4ac4a9e9d0be628a95b3",
|
||||
"name": "projet"}, {"description": "admin tenant", "enabled": true, "id":
|
||||
"8a42fc89e6fb41a0b676d7b502b35c81", "name": "admin"}, {"description": "My
|
||||
Project", "enabled": true, "id": "8f6e20e1ad2a4ffb98da9450dc804891", "name":
|
||||
"Aviator Project"}, {"description": "one instance in SUSPENDED state cannot
|
||||
be \"resumed\" and deleted", "enabled": true, "id": "951659d798a14d5e98a94878760cfe39",
|
||||
"name": "admgelProject"}, {"description": "sample", "enabled": true, "id":
|
||||
"a0d20724cd2d475e99b01b2b9a03f71e", "name": "projecttest"}, {"description":
|
||||
"lalala", "enabled": true, "id": "a0e37889b3eb4e319992c5b29ef8c5fe", "name":
|
||||
"jason_testxxx"}, {"description": "lalala", "enabled": true, "id": "aadac34ef5f44c869151d9f62851ea1b",
|
||||
"name": "jason_testxxxxx"}, {"description": "DELETEME", "enabled": true, "id":
|
||||
"b7d51b17bbc144b3991d94d3a715fe7b", "name": "DELETEME"}, {"description": "test",
|
||||
"enabled": true, "id": "bd57591e188f438ba53b19228e156358", "name": "test123"},
|
||||
{"description": "", "enabled": true, "id": "bfaebc8688fc48a2b227509173c934e3",
|
||||
"name": "aviator_test"}, {"description": "sample", "enabled": true, "id":
|
||||
"bfed1ed0079b4cb78abbbbb3257ddc21", "name": "another test project"}, {"description":
|
||||
"My Project", "enabled": true, "id": "c764b14c998040d6ad1fb98831b31754", "name":
|
||||
"Project 1377582007"}, {"description": "Used for Aviator testing/development
|
||||
", "enabled": true, "id": "d770443fc60a410c843dc12b98ac8135", "name": "<OPENSTACK_MEMBER_TENANTNAME>"},
|
||||
{"description": "System account for Morphlabs mCloud administration", "enabled":
|
||||
true, "id": "e7b1b62aa1474f758c4974b8be44cf6c", "name": "demo"}, {"description":
|
||||
"", "enabled": true, "id": "ecc997fefbb24691b14ff16ebe900f17", "name": "alvintest2"},
|
||||
{"description": "", "enabled": true, "id": "f10664c00326466b98707ce4d5cff470",
|
||||
"name": "alvintest4"}, {"description": "lalala", "enabled": true, "id": "f74461b5bd9e4740b2d4fb3df0e07b51",
|
||||
"name": "jason_testxxxx"}]}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 19:00:23 GMT
|
||||
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,74 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_MEMBER_USERNAME>","password":"<OPENSTACK_MEMBER_PASSWORD>"}}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '355'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 22:45:41 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T22:45:41.760351",
|
||||
"expires": "2013-09-26T04:45:41Z", "id": "922efc3fc21c4ffa86c280209f4aa9b8"},
|
||||
"serviceCatalog": [], "user": {"username": "<OPENSTACK_MEMBER_USERNAME>",
|
||||
"roles_links": [], "id": "447527294dae4a1788d36beb0db99c00", "roles": [],
|
||||
"name": "<OPENSTACK_MEMBER_USERNAME>"}, "metadata": {"is_admin": 0, "roles":
|
||||
[]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 22:45:41 GMT
|
||||
- request:
|
||||
method: get
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tenants
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ''
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
X-Auth-Token:
|
||||
- 922efc3fc21c4ffa86c280209f4aa9b8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '189'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 22:45:42 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"tenants_links": [], "tenants": [{"description": "Used for Aviator
|
||||
testing/development ", "enabled": true, "id": "d770443fc60a410c843dc12b98ac8135",
|
||||
"name": "<OPENSTACK_MEMBER_TENANTNAME>"}]}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 22:45:42 GMT
|
||||
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,62 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_ADMIN_USERNAME>","password":"<OPENSTACK_ADMIN_PASSWORD>"},"tenantName":"<OPENSTACK_ADMIN_TENANTNAME>"}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '2649'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 19:00:19 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T19:00:19.111920",
|
||||
"expires": "2013-09-26T01:00:19Z", "id": "f9433cbaa20849c9b6123d2f8d9efec6",
|
||||
"tenant": {"description": "Used for Aviator testing/development", "enabled":
|
||||
true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"}},
|
||||
"serviceCatalog": [{"endpoints": [{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"id": "6bb597a3738045f4b2c51a7702037cab", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:9292", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:9292",
|
||||
"id": "2985945e07b74103bb2dfef7e426cd43", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:9292"}],
|
||||
"endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:8777", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8777",
|
||||
"id": "370119dd80e84894bfe83d766fd467dd", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8777"}],
|
||||
"endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"id": "2492a6f5fa80466d9312e51a8f79b638", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Admin", "region":
|
||||
"RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud",
|
||||
"id": "1f68f3ce931946c788e487443e772fb2", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud"}],
|
||||
"endpoints_links": [], "type": "ec2", "name": "nova_ec2"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:35357/v2.0", "region": "RegionOne", "internalURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0", "id": "12c722e9b9fb471fbea83c6157c0123a",
|
||||
"publicURL": "<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0"}], "endpoints_links":
|
||||
[], "type": "identity", "name": "keystone"}], "user": {"username": "<OPENSTACK_ADMIN_USERNAME>",
|
||||
"roles_links": [], "id": "3cb44449b3cb48519641864ca82d1911", "roles": [{"name":
|
||||
"admin"}], "name": "<OPENSTACK_ADMIN_USERNAME>"}, "metadata": {"is_admin":
|
||||
0, "roles": ["a0d6ba8f41b746b495a6d25c69962489"]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 19:00:19 GMT
|
||||
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,62 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_ADMIN_USERNAME>","password":"<OPENSTACK_ADMIN_PASSWORD>"},"tenantName":"<OPENSTACK_ADMIN_TENANTNAME>"}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '2649'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 19:00:18 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T19:00:18.408332",
|
||||
"expires": "2013-09-26T01:00:18Z", "id": "bdd80cf6e8bd44898e107f050fb879cb",
|
||||
"tenant": {"description": "Used for Aviator testing/development", "enabled":
|
||||
true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"}},
|
||||
"serviceCatalog": [{"endpoints": [{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"id": "6bb597a3738045f4b2c51a7702037cab", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:9292", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:9292",
|
||||
"id": "2985945e07b74103bb2dfef7e426cd43", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:9292"}],
|
||||
"endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:8777", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8777",
|
||||
"id": "370119dd80e84894bfe83d766fd467dd", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8777"}],
|
||||
"endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"id": "2492a6f5fa80466d9312e51a8f79b638", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Admin", "region":
|
||||
"RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud",
|
||||
"id": "1f68f3ce931946c788e487443e772fb2", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud"}],
|
||||
"endpoints_links": [], "type": "ec2", "name": "nova_ec2"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:35357/v2.0", "region": "RegionOne", "internalURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0", "id": "12c722e9b9fb471fbea83c6157c0123a",
|
||||
"publicURL": "<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0"}], "endpoints_links":
|
||||
[], "type": "identity", "name": "keystone"}], "user": {"username": "<OPENSTACK_ADMIN_USERNAME>",
|
||||
"roles_links": [], "id": "3cb44449b3cb48519641864ca82d1911", "roles": [{"name":
|
||||
"admin"}], "name": "<OPENSTACK_ADMIN_USERNAME>"}, "metadata": {"is_admin":
|
||||
0, "roles": ["a0d6ba8f41b746b495a6d25c69962489"]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 19:00:18 GMT
|
||||
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,62 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_ADMIN_USERNAME>","password":"<OPENSTACK_ADMIN_PASSWORD>"},"tenantName":"<OPENSTACK_ADMIN_TENANTNAME>"}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '2649'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 19:00:20 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T19:00:20.145845",
|
||||
"expires": "2013-09-26T01:00:20Z", "id": "d95df57d5f424d0a996ed719bf4de115",
|
||||
"tenant": {"description": "Used for Aviator testing/development", "enabled":
|
||||
true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"}},
|
||||
"serviceCatalog": [{"endpoints": [{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"id": "6bb597a3738045f4b2c51a7702037cab", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:9292", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:9292",
|
||||
"id": "2985945e07b74103bb2dfef7e426cd43", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:9292"}],
|
||||
"endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:8777", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8777",
|
||||
"id": "370119dd80e84894bfe83d766fd467dd", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8777"}],
|
||||
"endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"id": "2492a6f5fa80466d9312e51a8f79b638", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Admin", "region":
|
||||
"RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud",
|
||||
"id": "1f68f3ce931946c788e487443e772fb2", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud"}],
|
||||
"endpoints_links": [], "type": "ec2", "name": "nova_ec2"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:35357/v2.0", "region": "RegionOne", "internalURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0", "id": "12c722e9b9fb471fbea83c6157c0123a",
|
||||
"publicURL": "<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0"}], "endpoints_links":
|
||||
[], "type": "identity", "name": "keystone"}], "user": {"username": "<OPENSTACK_ADMIN_USERNAME>",
|
||||
"roles_links": [], "id": "3cb44449b3cb48519641864ca82d1911", "roles": [{"name":
|
||||
"admin"}], "name": "<OPENSTACK_ADMIN_USERNAME>"}, "metadata": {"is_admin":
|
||||
0, "roles": ["a0d6ba8f41b746b495a6d25c69962489"]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 19:00:20 GMT
|
||||
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,62 @@
|
||||
---
|
||||
http_interactions:
|
||||
- request:
|
||||
method: post
|
||||
uri: <OPENSTACK_ADMIN_HOST_URI>:5000/v2.0/tokens
|
||||
body:
|
||||
encoding: UTF-8
|
||||
string: ! '{"auth":{"passwordCredentials":{"username":"<OPENSTACK_ADMIN_USERNAME>","password":"<OPENSTACK_ADMIN_PASSWORD>"},"tenantName":"<OPENSTACK_ADMIN_TENANTNAME>"}}'
|
||||
headers:
|
||||
Content-Type:
|
||||
- application/json
|
||||
User-Agent:
|
||||
- Faraday v0.8.8
|
||||
response:
|
||||
status:
|
||||
code: 200
|
||||
message:
|
||||
headers:
|
||||
vary:
|
||||
- X-Auth-Token
|
||||
content-type:
|
||||
- application/json
|
||||
content-length:
|
||||
- '2649'
|
||||
date:
|
||||
- Wed, 25 Sep 2013 19:00:21 GMT
|
||||
connection:
|
||||
- close
|
||||
body:
|
||||
encoding: US-ASCII
|
||||
string: ! '{"access": {"token": {"issued_at": "2013-09-25T19:00:21.745126",
|
||||
"expires": "2013-09-26T01:00:21Z", "id": "eb587564e730436b8f55861fb77fa04e",
|
||||
"tenant": {"description": "Used for Aviator testing/development", "enabled":
|
||||
true, "id": "291e43291289457da59d8f727c46147a", "name": "<OPENSTACK_ADMIN_TENANTNAME>"}},
|
||||
"serviceCatalog": [{"endpoints": [{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a",
|
||||
"id": "6bb597a3738045f4b2c51a7702037cab", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8774/v2/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:9292", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:9292",
|
||||
"id": "2985945e07b74103bb2dfef7e426cd43", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:9292"}],
|
||||
"endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:8777", "region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8777",
|
||||
"id": "370119dd80e84894bfe83d766fd467dd", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8777"}],
|
||||
"endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"region": "RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a",
|
||||
"id": "2492a6f5fa80466d9312e51a8f79b638", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8776/v1/291e43291289457da59d8f727c46147a"}],
|
||||
"endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints":
|
||||
[{"adminURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Admin", "region":
|
||||
"RegionOne", "internalURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud",
|
||||
"id": "1f68f3ce931946c788e487443e772fb2", "publicURL": "<OPENSTACK_ADMIN_HOST_URI>:8773/services/Cloud"}],
|
||||
"endpoints_links": [], "type": "ec2", "name": "nova_ec2"}, {"endpoints": [{"adminURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:35357/v2.0", "region": "RegionOne", "internalURL":
|
||||
"<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0", "id": "12c722e9b9fb471fbea83c6157c0123a",
|
||||
"publicURL": "<OPENSTACK_ADMIN_HOST_URI>:5000/v2.0"}], "endpoints_links":
|
||||
[], "type": "identity", "name": "keystone"}], "user": {"username": "<OPENSTACK_ADMIN_USERNAME>",
|
||||
"roles_links": [], "id": "3cb44449b3cb48519641864ca82d1911", "roles": [{"name":
|
||||
"admin"}], "name": "<OPENSTACK_ADMIN_USERNAME>"}, "metadata": {"is_admin":
|
||||
0, "roles": ["a0d6ba8f41b746b495a6d25c69962489"]}}}'
|
||||
http_version:
|
||||
recorded_at: Wed, 25 Sep 2013 19:00:21 GMT
|
||||
recorded_with: VCR 2.5.0
|
Reference in New Issue
Block a user