Class: Fog::OpenStack::Planning::Real
- Inherits:
-
Object
- Object
- Fog::OpenStack::Planning::Real
show all
- Includes:
- Core
- Defined in:
- lib/fog/planning/openstack.rb,
lib/fog/planning/openstack/requests/get_plan.rb,
lib/fog/planning/openstack/requests/list_plans.rb,
lib/fog/planning/openstack/requests/list_roles.rb,
lib/fog/planning/openstack/requests/patch_plan.rb,
lib/fog/planning/openstack/requests/create_plan.rb,
lib/fog/planning/openstack/requests/delete_plan.rb,
lib/fog/planning/openstack/requests/add_role_to_plan.rb,
lib/fog/planning/openstack/requests/get_plan_templates.rb,
lib/fog/planning/openstack/requests/remove_role_from_plan.rb
Instance Attribute Summary
Attributes included from Core
#auth_token, #auth_token_expiration, #current_tenant, #current_user, #current_user_id, #openstack_cache_ttl, #openstack_domain_id, #openstack_domain_name, #openstack_identity_prefix, #openstack_project_domain, #openstack_project_domain_id, #openstack_project_id, #openstack_user_domain, #openstack_user_domain_id, #unscoped_token
Instance Method Summary
collapse
Methods included from Core
#credentials, #initialize_identity, not_found_class, #reload
Constructor Details
#initialize(options = {}) ⇒ Real
NOTE: uncommenting this should be treated as api-change! def self.not_found_class
Fog::Planning::OpenStack::NotFound
end
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
# File 'lib/fog/planning/openstack.rb', line 105
def initialize(options = {})
initialize_identity options
@openstack_service_type = options[:openstack_service_type] || ['management'] @openstack_service_name = options[:openstack_service_name]
@openstack_endpoint_type = options[:openstack_endpoint_type] || 'adminURL'
@connection_options = options[:connection_options] || {}
authenticate
set_api_path
@persistent = options[:persistent] || false
@connection = Fog::Core::Connection.new("#{@scheme}://#{@host}:#{@port}", @persistent, @connection_options)
end
|
Instance Method Details
#add_role_to_plan(plan_uuid, role_uuid) ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/fog/planning/openstack/requests/add_role_to_plan.rb', line 5
def add_role_to_plan(plan_uuid, role_uuid)
request(
:expects => [201],
:method => 'POST',
:path => "plans/#{plan_uuid}/roles",
:body => Fog::JSON.encode('uuid' => role_uuid)
)
end
|
#create_plan(parameters) ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/fog/planning/openstack/requests/create_plan.rb', line 5
def create_plan(parameters)
request(
:expects => [201],
:method => 'POST',
:path => "plans",
:body => Fog::JSON.encode(parameters)
)
end
|
#delete_plan(plan_uuid) ⇒ Object
5
6
7
8
9
10
11
|
# File 'lib/fog/planning/openstack/requests/delete_plan.rb', line 5
def delete_plan(plan_uuid)
request(
:expects => [204],
:method => 'DELETE',
:path => "plans/#{plan_uuid}"
)
end
|
#get_plan(plan_uuid) ⇒ Object
5
6
7
8
9
10
11
|
# File 'lib/fog/planning/openstack/requests/get_plan.rb', line 5
def get_plan(plan_uuid)
request(
:expects => [200, 204],
:method => 'GET',
:path => "plans/#{plan_uuid}"
)
end
|
#get_plan_templates(plan_uuid) ⇒ Object
5
6
7
8
9
10
11
|
# File 'lib/fog/planning/openstack/requests/get_plan_templates.rb', line 5
def get_plan_templates(plan_uuid)
request(
:expects => [200, 204],
:method => 'GET',
:path => "plans/#{plan_uuid}/templates"
)
end
|
#list_plans(options = {}) ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/fog/planning/openstack/requests/list_plans.rb', line 5
def list_plans(options = {})
request(
:expects => [200, 204],
:method => 'GET',
:path => 'plans',
:query => options
)
end
|
#list_roles(options = {}) ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/fog/planning/openstack/requests/list_roles.rb', line 5
def list_roles(options = {})
request(
:expects => [200, 204],
:method => 'GET',
:path => 'roles',
:query => options
)
end
|
#patch_plan(plan_uuid, parameters) ⇒ Object
5
6
7
8
9
10
11
12
|
# File 'lib/fog/planning/openstack/requests/patch_plan.rb', line 5
def patch_plan(plan_uuid, parameters)
request(
:expects => [201],
:method => 'PATCH',
:path => "plans/#{plan_uuid}",
:body => Fog::JSON.encode(parameters)
)
end
|
#remove_role_from_plan(plan_uuid, role_uuid) ⇒ Object
5
6
7
8
9
10
11
|
# File 'lib/fog/planning/openstack/requests/remove_role_from_plan.rb', line 5
def remove_role_from_plan(plan_uuid, role_uuid)
request(
:expects => [200],
:method => 'DELETE',
:path => "plans/#{plan_uuid}/roles/#{role_uuid}"
)
end
|
#set_api_path ⇒ Object
121
122
123
124
125
|
# File 'lib/fog/planning/openstack.rb', line 121
def set_api_path
unless @path.match(SUPPORTED_VERSIONS)
@path = "/v2"
end
end
|