diff --git a/lib/aviator/openstack/compute/v2/public/delete_server_metadata_item.rb b/lib/aviator/openstack/compute/v2/public/delete_server_metadata_item.rb new file mode 100644 index 0000000..446e7a9 --- /dev/null +++ b/lib/aviator/openstack/compute/v2/public/delete_server_metadata_item.rb @@ -0,0 +1,31 @@ +module Aviator + + define_request :delete_server_metadata_item, inherit: [:openstack, :common, :v2, :public, :base] do + + meta :service, :compute + + link 'documentation', + 'http://docs.openstack.org/api/openstack-compute/2/content/Delete_Metadata_Item-d1e5790.html' + + + param :id, required: true + param :key, required: true + + + def headers + super + end + + + def http_method + :delete + end + + + def url + "#{ base_url }/servers/#{ params[:id] }/metadata/#{ params[:key] }" + end + + end + +end diff --git a/test/aviator/openstack/compute/v2/public/delete_server_metadata_item_test.rb b/test/aviator/openstack/compute/v2/public/delete_server_metadata_item_test.rb new file mode 100644 index 0000000..cd997f9 --- /dev/null +++ b/test/aviator/openstack/compute/v2/public/delete_server_metadata_item_test.rb @@ -0,0 +1,156 @@ +require 'test_helper' + +class Aviator::Test + + describe 'aviator/openstack/compute/v2/public/delete_server_metadata_item' do + + def create_request(session_data = delete_session_data, &block) + block ||= lambda do |p| + p[:id] = 'doesnt matter' + p[:key] = 'doesnt matter' + end + + klass.new(session_data, &block) + end + + + def delete_session_data + session.send :auth_info + end + + + def helper + Aviator::Test::RequestHelper + end + + + def klass + @klass ||= helper.load_request('openstack', 'compute', 'v2', 'public', 'delete_server_metadata_item.rb') + end + + + def session + unless @session + @session = Aviator::Session.new( + config_file: Environment.path, + environment: 'openstack_member' + ) + @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 = delete_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 :delete + end + + + validate_attr :required_params do + klass.required_params.must_equal [:id, :key] + end + + + validate_attr :url do + server_id = 'doesnt matter' + metadata_key = 'doesnt matter' + service_spec = delete_session_data[:access][:serviceCatalog].find { |s| s[:type] == 'compute' } + url = "#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ server_id }/metadata/#{ metadata_key }" + + request = create_request do |p| + p[:id] = server_id + p[:key] = metadata_key + end + + request.url.must_equal url + end + + + validate_response 'valid server id and metadata key are provided' do + service = session.compute_service + servers = service.request :list_servers + server_id = servers.body[:servers].first[:id] + + metadata = service.request(:list_server_metadata) { |p| p[:id] = server_id }.body[:metadata] + metadata_key = metadata.keys.first + + response = service.request :delete_server_metadata_item do |params| + params[:id] = server_id + params[:key] = metadata_key + end + + response.status.must_equal 204 + response.body.wont_be_nil + response.headers.wont_be_nil + end + + + validate_response 'invalid server id is provided' do + server_id = 'invalidserverid' + metadata_key = 'doesntmatter' + + response = session.compute_service.request :delete_server_metadata_item do |params| + params[:id] = server_id + params[:key] = metadata_key + end + + response.status.must_equal 404 + response.body.wont_be_nil + response.headers.wont_be_nil + end + + + validate_response 'invalid metadata key is provided' do + service = session.compute_service + servers = service.request :list_servers + server_id = servers.body[:servers].first[:id] + + metadata_key = 'invalidmetadatakey' + + response = service.request :delete_server_metadata_item do |params| + params[:id] = server_id + params[:key] = metadata_key + end + + response.status.must_equal 404 + response.body.wont_be_nil + response.headers.wont_be_nil + end + + + end + +end diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_invalid_metadata_key_is_provided.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_invalid_metadata_key_is_provided.yml new file mode 100644 index 0000000..97a3fca --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_invalid_metadata_key_is_provided.yml @@ -0,0 +1,135 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:15 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:15.290549", + "expires": "2013-10-09T05:32:15Z", "id": "2165e87585c745d6b1843a0f48e4dabd", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +- request: + method: get + uri: http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v0.8.8 + X-Auth-Token: + - 2165e87585c745d6b1843a0f48e4dabd + response: + status: + code: 200 + message: + headers: + x-compute-request-id: + - req-e3e6d3c5-0a20-4164-8dca-482e73b40761 + content-type: + - application/json + content-length: + - '351' + date: + - Tue, 08 Oct 2013 05:32:15 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"servers": [{"id": "37a966b0-6b19-4731-a7ae-f50a482b1a5a", "links": + [{"href": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a", + "rel": "self"}, {"href": "http://127.0.0.1:8774/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a", + "rel": "bookmark"}], "name": "test"}]}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +- request: + method: delete + uri: http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a/metadata/invalidmetadatakey + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v0.8.8 + X-Auth-Token: + - 2165e87585c745d6b1843a0f48e4dabd + response: + status: + code: 404 + message: + headers: + content-length: + - '73' + content-type: + - application/json; charset=UTF-8 + x-compute-request-id: + - req-88e32149-1c4e-47e7-95a3-3b8c7d21caa3 + date: + - Tue, 08 Oct 2013 05:32:15 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"itemNotFound": {"message": "Metadata item was not found", "code": + 404}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +recorded_with: VCR 2.5.0 diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_invalid_server_id_is_provided.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_invalid_server_id_is_provided.yml new file mode 100644 index 0000000..7c3e88e --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_invalid_server_id_is_provided.yml @@ -0,0 +1,98 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:13 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:13.747520", + "expires": "2013-10-09T05:32:13Z", "id": "fa462d98f80943cebeef2df37a8151a4", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:14 GMT +- request: + method: delete + uri: http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers/invalidserverid/metadata/doesntmatter + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v0.8.8 + X-Auth-Token: + - fa462d98f80943cebeef2df37a8151a4 + response: + status: + code: 404 + message: + headers: + content-length: + - '67' + content-type: + - application/json; charset=UTF-8 + x-compute-request-id: + - req-4d8643a7-0391-4bfd-aa63-22659839931e + date: + - Tue, 08 Oct 2013 05:32:13 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"itemNotFound": {"message": "Server does not exist", "code": 404}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:14 GMT +recorded_with: VCR 2.5.0 diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_valid_server_id_and_metadata_key_are_provided.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_valid_server_id_and_metadata_key_are_provided.yml new file mode 100644 index 0000000..aabcbbe --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/leads_to_a_valid_response_when_valid_server_id_and_metadata_key_are_provided.yml @@ -0,0 +1,167 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:14.041914", + "expires": "2013-10-09T05:32:13Z", "id": "857af580324241adb7784fee6be2908e", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:14 GMT +- request: + method: get + uri: http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v0.8.8 + X-Auth-Token: + - 857af580324241adb7784fee6be2908e + response: + status: + code: 200 + message: + headers: + x-compute-request-id: + - req-9f40e9a2-e587-4273-9eb1-5e744818b83f + content-type: + - application/json + content-length: + - '351' + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"servers": [{"id": "37a966b0-6b19-4731-a7ae-f50a482b1a5a", "links": + [{"href": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a", + "rel": "self"}, {"href": "http://127.0.0.1:8774/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a", + "rel": "bookmark"}], "name": "test"}]}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:14 GMT +- request: + method: get + uri: http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a/metadata + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v0.8.8 + X-Auth-Token: + - 857af580324241adb7784fee6be2908e + response: + status: + code: 200 + message: + headers: + x-compute-request-id: + - req-b6244e3c-4612-4209-8675-da386fb60569 + content-type: + - application/json + content-length: + - '46' + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"metadata": {"foo": "lorem", "bar": "ipsum"}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:14 GMT +- request: + method: delete + uri: http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a/servers/37a966b0-6b19-4731-a7ae-f50a482b1a5a/metadata/foo + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v0.8.8 + X-Auth-Token: + - 857af580324241adb7784fee6be2908e + response: + status: + code: 204 + message: + headers: + content-length: + - '0' + x-compute-request-id: + - req-91ee33e5-193d-462a-8ec4-9a1f2d544f91 + content-type: + - application/json + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: '' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:14 GMT +recorded_with: VCR 2.5.0 diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_body_.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_body_.yml new file mode 100644 index 0000000..478837c --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_body_.yml @@ -0,0 +1,65 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:14.880032", + "expires": "2013-10-09T05:32:14Z", "id": "ce81eedc8a65459fbde35bd6373e0fc0", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +recorded_with: VCR 2.5.0 diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_headers_.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_headers_.yml new file mode 100644 index 0000000..098a807 --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_headers_.yml @@ -0,0 +1,65 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:14.709677", + "expires": "2013-10-09T05:32:14Z", "id": "afa203b5cd0a4a5d886678bfb274460a", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +recorded_with: VCR 2.5.0 diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_http_method_.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_http_method_.yml new file mode 100644 index 0000000..edfed1b --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_http_method_.yml @@ -0,0 +1,65 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:14 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:14.541309", + "expires": "2013-10-09T05:32:14Z", "id": "bd8ee8099b4a49ac806bc168a1b49fae", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +recorded_with: VCR 2.5.0 diff --git a/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_url_.yml b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_url_.yml new file mode 100644 index 0000000..cb5b77a --- /dev/null +++ b/test/cassettes/openstack/compute/v2/public/delete_server_metadata_item/returns_the_correct_value_for_url_.yml @@ -0,0 +1,65 @@ +--- +http_interactions: +- request: + method: post + uri: :5000/v2.0/tokens + body: + encoding: UTF-8 + string: ! '{"auth":{"passwordCredentials":{"username":"","password":""},"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: + - '2677' + date: + - Tue, 08 Oct 2013 05:32:15 GMT + connection: + - close + body: + encoding: US-ASCII + string: ! '{"access": {"token": {"issued_at": "2013-10-08T05:32:15.117183", + "expires": "2013-10-09T05:32:15Z", "id": "7bd13051a6f94f779141b74b5b55edac", + "tenant": {"description": "", "enabled": true, "id": "5eaedfd28a054b6189750bc1ccb8be5a", + "name": ""}}, "serviceCatalog": [{"endpoints": + [{"adminURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "058dfe093abb4befbe686c0332a68463", "publicURL": "http://127.0.0.1:8774/v2/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "compute", "name": "nova"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:3333", "region": "RegionOne", "internalURL": "http://127.0.0.1:3333", + "id": "24fc6aff470e4feabec22cfaad00d8e8", "publicURL": "http://127.0.0.1:3333"}], + "endpoints_links": [], "type": "s3", "name": "s3"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:9292", "region": "RegionOne", "internalURL": "http://127.0.0.1:9292", + "id": "00bcfe025b504085911dfbf6cf445348", "publicURL": "http://127.0.0.1:9292"}], + "endpoints_links": [], "type": "image", "name": "glance"}, {"endpoints": [{"adminURL": + "http://127.0.0.1:8777", "region": "RegionOne", "internalURL": "http://127.0.0.1:8777", + "id": "266f73a4319a4f659052bc4a49d395d2", "publicURL": "http://127.0.0.1:8777"}], + "endpoints_links": [], "type": "metering", "name": "ceilometer"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "region": "RegionOne", "internalURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a", + "id": "17ad473a2a5e420ca5eee8367cc6eb5d", "publicURL": "http://127.0.0.1:8776/v1/5eaedfd28a054b6189750bc1ccb8be5a"}], + "endpoints_links": [], "type": "volume", "name": "cinder"}, {"endpoints": + [{"adminURL": "http://127.0.0.1:8773/services/Admin", "region": "RegionOne", + "internalURL": "http://127.0.0.1:8773/services/Cloud", "id": "3d71ad35bb07412d9903f1a1b5637d91", + "publicURL": "http://127.0.0.1:8773/services/Cloud"}], "endpoints_links": + [], "type": "ec2", "name": "ec2"}, {"endpoints": [{"adminURL": "http://127.0.0.1:35357/v2.0", + "region": "RegionOne", "internalURL": "http://127.0.0.1:5000/v2.0", "id": + "3f99e67e2aab474fbd8952e2684ad6c3", "publicURL": "http://127.0.0.1:5000/v2.0"}], + "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": + "", "roles_links": [], "id": "64a1ac655882436e8c5a404a69f42f10", + "roles": [{"name": "_member_"}, {"name": "project_manager"}], "name": ""}, + "metadata": {"is_admin": 0, "roles": ["9fe2ff9ee4384b1894a90878d3e92bab", + "59153b1dfbca414bb60731d217b8bade"]}}}' + http_version: + recorded_at: Tue, 08 Oct 2013 05:32:15 GMT +recorded_with: VCR 2.5.0