1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
# OpenStack Planning Service (Tuskar) Example
require 'fog/openstack'
require 'pp'
auth_url = "https://example.net/v2.0/tokens"
username = 'admin@example.net'
password = 'secret'
tenant = 'My Compute Tenant' # String
planning ||= ::Fog::OpenStack.new(
:service => :planning,
:openstack_api_key => password,
:openstack_username => username,
:openstack_auth_url => auth_url,
:openstack_tenant => tenant
)
pp planning
#
# Listing of Tuskar roles
#
roles = planning.roles.each do |role|
pp role
end
#
# Listing of Tuskar plans
#
plans = planning.plans.each do |plan|
pp plan
end
#
# Creating new Tuskar plan
#
plan = planning.plans.new({
:name => 'New Plan Name',
:description => 'New Plan Description'
})
pp plan
#
# Assign role to plan
#
role_uuid = roles.first.uuid
plan.add_role(role_uuid)
#
# Output Heat templates for plan
#
pp plan.templates
|