Update request files to use inheritance

This commit is contained in:
Mark Maglana
2013-09-22 21:59:00 -07:00
parent 436698354a
commit ced249ed02
33 changed files with 152 additions and 467 deletions

View File

@@ -0,0 +1,9 @@
module Aviator
define_request :base, inherit: [:openstack, :common, :v2, :public, :base] do
meta :endpoint_type, :admin
end
end

View File

@@ -21,6 +21,17 @@ module Aviator
service_spec[:endpoints][0]["#{ endpoint_type }URL".to_sym] service_spec[:endpoints][0]["#{ endpoint_type }URL".to_sym]
end end
def params_to_querystring(param_names)
filters = []
param_names.each do |param_name|
filters << "#{ param_name }=#{ params[param_name] }" if params[param_name]
end
filters.empty? ? "" : "?#{ filters.join('&') }"
end
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :confirm_server_resize do define_request :confirm_server_resize, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Confirm_Resized_Server-d1e3868.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Confirm_Resized_Server-d1e3868.html'
@@ -21,13 +18,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -37,8 +28,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :admin }/servers/#{ params[:id] }/action"
"#{ service_spec[:endpoints][0][:adminURL] }/servers/#{ params[:id] }/action"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :get_host_details do define_request :get_host_details, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://api.openstack.org/api-ref.html#ext-os-hosts' 'http://api.openstack.org/api-ref.html#ext-os-hosts'
@@ -14,13 +11,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -30,9 +21,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s } "#{ base_url_for :admin }/os-hosts/#{ params[:host_name] }"
"#{ service_spec[:endpoints][0][:adminURL] }/os-hosts/#{ params[:host_name] }"
end end
end end

View File

@@ -1,14 +1,11 @@
module Aviator module Aviator
define_request :list_hosts, inherit: [:openstack, :common, :v2, :public, :base] do define_request :list_hosts, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://api.openstack.org/api-ref.html#ext-os-hosts' 'http://api.openstack.org/api-ref.html#ext-os-hosts'
link 'documentation bug', link 'documentation bug',
'https://bugs.launchpad.net/nova/+bug/1224763' 'https://bugs.launchpad.net/nova/+bug/1224763'
@@ -28,7 +25,7 @@ module Aviator
def url def url
url = "#{ base_url_for(:admin) }/os-hosts" url = "#{ base_url_for :admin }/os-hosts"
filters = [] filters = []

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :resize_server do define_request :resize_server, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Resize_Server-d1e3707.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Resize_Server-d1e3707.html'
@@ -26,13 +23,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -42,8 +33,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :admin }/servers/#{ params[:id] }/action"
"#{ service_spec[:endpoints][0][:adminURL] }/servers/#{ params[:id] }/action"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :change_admin_password do define_request :change_admin_password, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Change_Password-d1e3234.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Change_Password-d1e3234.html'
@@ -29,13 +26,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -45,8 +36,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }/action"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }/action"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :create_image do define_request :create_image, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Create_Image-d1e4655.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Create_Image-d1e4655.html'
@@ -31,13 +28,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -47,8 +38,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }/action"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }/action"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :create_server do define_request :create_server, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/CreateServers.html' 'http://docs.openstack.org/api/openstack-compute/2/content/CreateServers.html'
@@ -39,13 +36,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -55,8 +46,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers"
"#{ service_spec[:endpoints][0][:publicURL] }/servers"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :delete_image do define_request :delete_image, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Delete_Image-d1e4957.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Delete_Image-d1e4957.html'
@@ -14,13 +11,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -30,9 +21,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/images/#{ params[:id]}"
"#{ service_spec[:endpoints][0][:publicURL] }/images/#{ params[:id]}"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :delete_server do define_request :delete_server, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Delete_Server-d1e2883.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Delete_Server-d1e2883.html'
@@ -14,13 +11,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -30,8 +21,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :get_image_details do define_request :get_image_details, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Get_Image_Details-d1e4848.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Get_Image_Details-d1e4848.html'
@@ -14,13 +11,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -30,9 +21,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/images/#{ params[:id]}"
"#{ service_spec[:endpoints][0][:publicURL] }/images/#{ params[:id]}"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :get_server do define_request :get_server, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Get_Server_Details-d1e2623.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Get_Server_Details-d1e2623.html'
@@ -13,13 +10,7 @@ module Aviator
param :id, required: true param :id, required: true
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -29,9 +20,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :list_addresses do define_request :list_addresses, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/List_Addresses-d1e3014.html' 'http://docs.openstack.org/api/openstack-compute/2/content/List_Addresses-d1e3014.html'
@@ -19,13 +16,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -35,11 +26,8 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } url = "#{ base_url_for :public }/servers/#{ params[:id] }/ips"
url = "#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }/ips"
url += "/#{ params[:networkID] }" if params[:networkID] url += "/#{ params[:networkID] }" if params[:networkID]
url url
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :list_flavors do
meta :provider, :openstack define_request :list_flavors, inherit: [:openstack, :common, :v2, :public, :base] do
meta :service, :compute
meta :api_version, :v2 meta :service, :compute
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/List_Flavors-d1e4188.html' 'http://docs.openstack.org/api/openstack-compute/2/content/List_Flavors-d1e4188.html'
@@ -18,13 +15,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -34,20 +25,9 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } str = "#{ base_url_for :public }/flavors"
str = "#{ service_spec[:endpoints][0][:publicURL] }/flavors"
str += "/detail" if params[:details] str += "/detail" if params[:details]
str += params_to_querystring(optional_params + required_params - [:details])
filters = []
(optional_params + required_params - [:details]).each do |param_name|
filters << "#{ param_name }=#{ params[param_name] }" if params[param_name]
end
str += "?#{ filters.join('&') }" unless filters.empty?
str
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :list_images do define_request :list_images, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/List_Images-d1e4435.html' 'http://docs.openstack.org/api/openstack-compute/2/content/List_Images-d1e4435.html'
@@ -21,13 +18,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -37,20 +28,9 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == 'compute' } str = "#{ base_url_for :public }/images"
str = "#{ service_spec[:endpoints][0][:publicURL] }/images"
str += "/detail" if params[:details] str += "/detail" if params[:details]
str += params_to_querystring(optional_params + required_params - [:details])
filters = []
(optional_params + required_params - [:details]).each do |param_name|
filters << "#{ param_name }=#{ params[param_name] }" if params[param_name]
end
str += "?#{ filters.join('&') }" unless filters.empty?
str
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :list_servers do define_request :list_servers, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/List_Servers-d1e2078.html' 'http://docs.openstack.org/api/openstack-compute/2/content/List_Servers-d1e2078.html'
@@ -31,13 +28,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -47,9 +38,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } str = "#{ base_url_for :public }/servers"
str = "#{ service_spec[:endpoints][0][:publicURL] }/servers"
str += "/detail" if params[:details] str += "/detail" if params[:details]
filters = [] filters = []

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :reboot_server do define_request :reboot_server, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Reboot_Server-d1e3371.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Reboot_Server-d1e3371.html'
@@ -26,13 +23,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -42,8 +33,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }/action"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }/action"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :rebuild_server do define_request :rebuild_server, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/Rebuild_Server-d1e3538.html' 'http://docs.openstack.org/api/openstack-compute/2/content/Rebuild_Server-d1e3538.html'
@@ -38,13 +35,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -54,8 +45,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }/action"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }/action"
end end
end end

View File

@@ -1,20 +1,11 @@
module Aviator module Aviator
define_request :root do define_request :root, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -24,8 +15,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } uri = URI(base_url_for(:public))
uri = URI(service_spec[:endpoints][0][:publicURL])
"#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v2/" "#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v2/"
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :update_server do define_request :update_server, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :compute
meta :service, :compute
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-compute/2/content/ServerUpdate.html' 'http://docs.openstack.org/api/openstack-compute/2/content/ServerUpdate.html'
@@ -30,13 +27,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -46,8 +37,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :public }/servers/#{ params[:id] }"
"#{ service_spec[:endpoints][0][:publicURL] }/servers/#{ params[:id] }"
end end
end end

View File

@@ -1,12 +1,8 @@
module Aviator module Aviator
define_request :add_role_to_user_on_tenant do define_request :add_role_to_user_on_tenant, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :admin
meta :service, :identity
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/PUT_addRolesToUserOnTenant_v2.0_tenants__tenantId__users__userId__roles_OS-KSADM__roleId__.html' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/PUT_addRolesToUserOnTenant_v2.0_tenants__tenantId__users__userId__roles_OS-KSADM__roleId__.html'
@@ -18,13 +14,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -34,11 +24,8 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s } p = params
"#{ service_spec[:endpoints][0][:adminURL] }" \ "#{ base_url_for :admin }/tenants/#{ p[:tenant_id] }/users/#{ p[:user_id] }/roles/OS-KSADM/#{ p[:role_id] }"
"/tenants/#{ params[:tenant_id] }" \
"/users/#{ params[:user_id] }" \
"/roles/OS-KSADM/#{ params[:role_id] }"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :create_tenant do define_request :create_tenant, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/'
@@ -28,13 +25,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -44,8 +35,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == 'identity' } "#{ base_url_for :admin }/tenants"
"#{ service_spec[:endpoints][0][:adminURL] }/tenants"
end end
end end

View File

@@ -1,15 +1,12 @@
module Aviator module Aviator
define_request :delete_role_from_user_on_tenant do define_request :delete_role_from_user_on_tenant, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/DELETE_deleteRoleFromUserOnTenant_v2.0_tenants__tenantId__users__userId__roles_OS-KSADM__roleId__.html' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/DELETE_deleteRoleFromUserOnTenant_v2.0_tenants__tenantId__users__userId__roles_OS-KSADM__roleId__.html'
param :tenant_id, required: true param :tenant_id, required: true
@@ -18,13 +15,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -34,11 +25,8 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s } p = params
s = "#{ service_spec[:endpoints][0][:adminURL] }/tenants/#{ params[:tenant_id] }" "#{ base_url_for :admin }/tenants/#{ p[:tenant_id] }/users/#{ p[:user_id] }/roles/OS-KSADM/#{ p[:role_id] }"
s += "/users/#{ params[:user_id] }"
s += "/roles/OS-KSADM/#{ params[:role_id] }"
s
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :delete_tenant do define_request :delete_tenant, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/DELETE_deleteTenant_v2.0_tenants__tenantId__.html' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/DELETE_deleteTenant_v2.0_tenants__tenantId__.html'
@@ -14,13 +11,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -30,9 +21,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } "#{ base_url_for :admin }/tenants/#{ params[:id]}"
"#{ service_spec[:endpoints][0][:adminURL] }/tenants/#{ params[:id]}"
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :list_tenants do define_request :list_tenants, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/GET_listTenants_v2.0_tenants_Tenant_Operations.html' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/GET_listTenants_v2.0_tenants_Tenant_Operations.html'
@@ -19,13 +16,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -35,18 +26,8 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == 'identity' } str = "#{ base_url_for :admin }/tenants"
str = "#{ service_spec[:endpoints][0][:adminURL] }/tenants" str += params_to_querystring(optional_params + required_params)
filters = []
(optional_params + required_params).each do |param_name|
filters << "#{ param_name }=#{ params[param_name] }" if params[param_name]
end
str += "?#{ filters.join('&') }" unless filters.empty?
str
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :update_tenant do define_request :update_tenant, inherit: [:openstack, :common, :v2, :admin, :base] do
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :admin
link 'documentation', link 'documentation',
@@ -32,13 +29,7 @@ module Aviator
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -48,8 +39,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find { |s| s[:type] == service.to_s } "#{ base_url_for :admin }/tenants/#{ params[:id] }"
"#{ service_spec[:endpoints][0][:adminURL] }/tenants/#{ params[:id] }"
end end
end end

View File

@@ -1,12 +1,9 @@
module Aviator module Aviator
define_request :create_token do define_request :create_token, inherit: [:openstack, :common, :v2, :public, :base] do
meta :anonymous, true meta :anonymous, true
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/POST_authenticate_v2.0_tokens_.html' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/POST_authenticate_v2.0_tokens_.html'
@@ -58,8 +55,6 @@ module Aviator
url = session_data[:auth_service][:host_uri] url = session_data[:auth_service][:host_uri]
url += '/v2.0' if (URI(url).path =~ /^\/?\w+/).nil? url += '/v2.0' if (URI(url).path =~ /^\/?\w+/).nil?
url += "/tokens" url += "/tokens"
url
end end
end end

View File

@@ -1,11 +1,8 @@
module Aviator module Aviator
define_request :list_tenants do define_request :list_tenants, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :identity
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :public
link 'documentation', link 'documentation',
'http://docs.openstack.org/api/openstack-identity-service/2.0/content/GET_listTenants_v2.0_tokens_tenants_.html' 'http://docs.openstack.org/api/openstack-identity-service/2.0/content/GET_listTenants_v2.0_tokens_tenants_.html'
@@ -19,29 +16,13 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == 'identity' } str = "#{ base_url_for :public }/tenants"
str = "#{ service_spec[:endpoints][0][:publicURL] }/tenants" str += params_to_querystring(optional_params + required_params)
filters = []
(optional_params + required_params).each do |param_name|
filters << "#{ param_name }=#{ params[param_name] }" if params[param_name]
end
str += "?#{ filters.join('&') }" unless filters.empty?
str
end end
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end

View File

@@ -1,20 +1,12 @@
module Aviator module Aviator
define_request :root do define_request :root, inherit: [:openstack, :common, :v2, :public, :base] do
meta :service, :identity
meta :provider, :openstack
meta :service, :identity
meta :api_version, :v2
meta :endpoint_type, :public
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -24,8 +16,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } uri = URI(base_url_for(:public))
uri = URI(service_spec[:endpoints][0][:publicURL])
"#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v2.0/" "#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v2.0/"
end end

View File

@@ -1,20 +1,12 @@
module Aviator module Aviator
define_request :root do define_request :root, inherit: [:openstack, :common, :v2, :public, :base] do
meta :provider, :openstack meta :service, :image
meta :service, :image meta :api_version, :v1
meta :api_version, :v1
meta :endpoint_type, :public
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -24,8 +16,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } uri = URI(base_url_for(:public))
uri = URI(service_spec[:endpoints][0][:publicURL])
"#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v1/" "#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v1/"
end end

View File

@@ -1,20 +1,13 @@
module Aviator module Aviator
define_request :root do define_request :root, inherit: [:openstack, :common, :v2, :public, :base] do
meta :service, :volume
meta :api_version, :v1
meta :provider, :openstack
meta :service, :volume
meta :api_version, :v1
meta :endpoint_type, :public
def headers def headers
h = {} super
unless self.anonymous?
h['X-Auth-Token'] = session_data[:access][:token][:id]
end
h
end end
@@ -24,8 +17,7 @@ module Aviator
def url def url
service_spec = session_data[:access][:serviceCatalog].find{|s| s[:type] == service.to_s } uri = URI(base_url_for(:public))
uri = URI(service_spec[:endpoints][0][:publicURL])
"#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v1/" "#{ uri.scheme }://#{ uri.host }:#{ uri.port.to_s }/v1/"
end end

View File

@@ -52,7 +52,7 @@ class Aviator::Test
validate_attr :headers do validate_attr :headers do
create_request.headers?.must_equal false create_request.headers?.must_equal true
end end