misty 0.1.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +222 -1
- data/lib/misty.rb +8 -0
- data/lib/misty/auth.rb +60 -0
- data/lib/misty/auth/auth_v2.rb +46 -0
- data/lib/misty/auth/auth_v3.rb +58 -0
- data/lib/misty/autoload.rb +82 -0
- data/lib/misty/cloud.rb +133 -0
- data/lib/misty/http/client.rb +115 -0
- data/lib/misty/http/direct.rb +26 -0
- data/lib/misty/http/method_builder.rb +96 -0
- data/lib/misty/http/request.rb +75 -0
- data/lib/misty/misty.rb +51 -0
- data/lib/misty/openstack/aodh/aodh_v2.rb +12 -0
- data/lib/misty/openstack/aodh/v2.rb +20 -0
- data/lib/misty/openstack/ceilometer/ceilometer_v2.rb +13 -0
- data/lib/misty/openstack/ceilometer/v2.rb +20 -0
- data/lib/misty/openstack/cinder/cinder_v1.rb +35 -0
- data/lib/misty/openstack/cinder/cinder_v3.rb +148 -0
- data/lib/misty/openstack/cinder/v1.rb +24 -0
- data/lib/misty/openstack/cinder/v3.rb +24 -0
- data/lib/misty/openstack/designate/designate_v2.rb +69 -0
- data/lib/misty/openstack/designate/v2.rb +20 -0
- data/lib/misty/openstack/glance/glance_v1.rb +16 -0
- data/lib/misty/openstack/glance/glance_v2.rb +29 -0
- data/lib/misty/openstack/glance/v1.rb +20 -0
- data/lib/misty/openstack/glance/v2.rb +20 -0
- data/lib/misty/openstack/heat/heat_v1.rb +85 -0
- data/lib/misty/openstack/heat/v1.rb +24 -0
- data/lib/misty/openstack/ironic/ironic_v1.rb +71 -0
- data/lib/misty/openstack/ironic/v1.rb +26 -0
- data/lib/misty/openstack/karbor/karbor_v1.rb +32 -0
- data/lib/misty/openstack/karbor/v1.rb +20 -0
- data/lib/misty/openstack/keystone/keystone_v2_0.rb +11 -0
- data/lib/misty/openstack/keystone/keystone_v2_0_ext.rb +32 -0
- data/lib/misty/openstack/keystone/keystone_v3.rb +147 -0
- data/lib/misty/openstack/keystone/keystone_v3_ext.rb +124 -0
- data/lib/misty/openstack/keystone/v2_0.rb +23 -0
- data/lib/misty/openstack/keystone/v3.rb +23 -0
- data/lib/misty/openstack/magnum/magnum_v1.rb +41 -0
- data/lib/misty/openstack/magnum/v1.rb +26 -0
- data/lib/misty/openstack/manila/manila_v2.rb +143 -0
- data/lib/misty/openstack/manila/v2.rb +26 -0
- data/lib/misty/openstack/microversion.rb +62 -0
- data/lib/misty/openstack/neutron/neutron_v2_0.rb +205 -0
- data/lib/misty/openstack/neutron/v2_0.rb +20 -0
- data/lib/misty/openstack/nova/nova_v2_1.rb +269 -0
- data/lib/misty/openstack/nova/v2_1.rb +40 -0
- data/lib/misty/openstack/sahara/sahara_v1_1.rb +77 -0
- data/lib/misty/openstack/sahara/v1_1.rb +20 -0
- data/lib/misty/openstack/searchlight/searchlight_v1.rb +15 -0
- data/lib/misty/openstack/searchlight/v1.rb +20 -0
- data/lib/misty/openstack/senlin/senlin_v1.rb +66 -0
- data/lib/misty/openstack/senlin/v1.rb +20 -0
- data/lib/misty/openstack/swift/swift_v1.rb +23 -0
- data/lib/misty/openstack/swift/v1.rb +20 -0
- data/lib/misty/openstack/trove/trove_v1_0.rb +51 -0
- data/lib/misty/openstack/trove/v1_0.rb +20 -0
- data/lib/misty/openstack/zaqar/v2.rb +20 -0
- data/lib/misty/openstack/zaqar/zaqar_v2.rb +46 -0
- data/lib/misty/version.rb +2 -2
- data/test/integration/compute_test.rb +35 -0
- data/test/integration/network_test.rb +34 -0
- data/test/integration/orchestration_test.rb +92 -0
- data/test/integration/test_helper.rb +19 -0
- data/test/integration/vcr/compute_using_nova_v2_1.yml +1107 -0
- data/test/integration/vcr/network_using_neutron_v2_0.yml +1029 -0
- data/test/integration/vcr/orchestration_using_heat_v1.yml +1457 -0
- data/test/unit/auth_helper.rb +52 -0
- data/test/unit/auth_test.rb +99 -0
- data/test/unit/cloud/requests_test.rb +113 -0
- data/test/unit/cloud/services_test.rb +171 -0
- data/test/unit/cloud_test.rb +145 -0
- data/test/unit/http/client_test.rb +74 -0
- data/test/unit/http/direct_test.rb +103 -0
- data/test/unit/http/method_builder_test.rb +133 -0
- data/test/unit/http/request_test.rb +123 -0
- data/test/unit/misty_test.rb +36 -0
- data/test/unit/openstack/APIs_test.rb +40 -0
- data/test/unit/openstack/microversion_test.rb +70 -0
- data/test/unit/service_helper.rb +25 -0
- data/test/unit/test_helper.rb +8 -0
- metadata +170 -5
@@ -0,0 +1,205 @@
|
|
1
|
+
module Misty::Openstack::NeutronV2_0
|
2
|
+
def v2_0
|
3
|
+
{"/"=>{:GET=>[:list_api_versions]},
|
4
|
+
"/v2.0/"=>{:GET=>[:show_api_v2_details]},
|
5
|
+
"/v2.0/extensions"=>{:GET=>[:list_extensions]},
|
6
|
+
"/v2.0/extensions/{alias}"=>{:GET=>[:show_extension_details]},
|
7
|
+
"/v2.0/networks/{network_id}"=>
|
8
|
+
{:GET=>[:show_network_details],
|
9
|
+
:PUT=>[:update_network],
|
10
|
+
:DELETE=>[:delete_network]},
|
11
|
+
"/v2.0/networks"=>
|
12
|
+
{:GET=>[:list_networks], :POST=>[:create_network, :bulk_create_networks]},
|
13
|
+
"/v2.0/ports/{port_id}"=>
|
14
|
+
{:GET=>[:show_port_details, :show_trunk_details],
|
15
|
+
:PUT=>[:update_port],
|
16
|
+
:DELETE=>[:delete_port]},
|
17
|
+
"/v2.0/ports"=>
|
18
|
+
{:GET=>[:list_ports], :POST=>[:create_port, :bulk_create_ports]},
|
19
|
+
"/v2.0/segments/{segment_id}"=>
|
20
|
+
{:GET=>[:show_segment_details],
|
21
|
+
:PUT=>[:update_segment],
|
22
|
+
:DELETE=>[:delete_segment]},
|
23
|
+
"/v2.0/segments"=>{:GET=>[:list_segments], :POST=>[:create_segment]},
|
24
|
+
"/v2.0/trunks"=>{:GET=>[:list_trunks], :POST=>[:create_trunk]},
|
25
|
+
"/v2.0/trunks/{trunk_id}/add_subports"=>{:PUT=>[:add_subports_to_trunk]},
|
26
|
+
"/v2.0/trunks/{trunk_id}/remove_subports"=>
|
27
|
+
{:PUT=>[:delete_subports_from_trunk]},
|
28
|
+
"/v2.0/trunks/{trunk_id}/get_subports"=>{:GET=>[:list_subports_for_trunk]},
|
29
|
+
"/v2.0/trunks/{trunk_id}"=>
|
30
|
+
{:PUT=>[:update_trunk], :GET=>[:show_trunk], :DELETE=>[:delete_trunk]},
|
31
|
+
"/v2.0/floatingips"=>
|
32
|
+
{:GET=>[:list_floating_ips], :POST=>[:create_floating_ip]},
|
33
|
+
"/v2.0/floatingips/{floatingip_id}"=>
|
34
|
+
{:GET=>[:show_floating_ip_details],
|
35
|
+
:PUT=>[:update_floating_ip],
|
36
|
+
:DELETE=>[:delete_floating_ip]},
|
37
|
+
"/v2.0/routers"=>{:GET=>[:list_routers], :POST=>[:create_router]},
|
38
|
+
"/v2.0/routers/{router_id}"=>
|
39
|
+
{:GET=>[:show_router_details],
|
40
|
+
:PUT=>[:update_router],
|
41
|
+
:DELETE=>[:delete_router]},
|
42
|
+
"/v2.0/routers/{router_id}/add_router_interface"=>
|
43
|
+
{:PUT=>[:add_interface_to_router]},
|
44
|
+
"/v2.0/routers/{router_id}/remove_router_interface"=>
|
45
|
+
{:PUT=>[:remove_interface_from_router]},
|
46
|
+
"/v2.0/subnetpools/{subnetpool_id}"=>
|
47
|
+
{:GET=>[:show_subnet_pool],
|
48
|
+
:PUT=>[:update_subnet_pool],
|
49
|
+
:DELETE=>[:delete_subnet_pool]},
|
50
|
+
"/v2.0/subnetpools"=>
|
51
|
+
{:GET=>[:list_subnet_pools], :POST=>[:create_subnet_pool]},
|
52
|
+
"/v2.0/subnets"=>
|
53
|
+
{:GET=>[:list_subnets], :POST=>[:create_subnet, :bulk_create_subnet]},
|
54
|
+
"/v2.0/subnets/{subnet_id}"=>
|
55
|
+
{:GET=>[:show_subnet_details],
|
56
|
+
:PUT=>[:update_subnet],
|
57
|
+
:DELETE=>[:delete_subnet]},
|
58
|
+
"/v2.0/fwaas/firewall_groups"=>
|
59
|
+
{:GET=>[:list_firewall_groups], :POST=>[:create_firewall_group]},
|
60
|
+
"/v2.0/fwaas/firewall_groups/{firewall_group_id}"=>
|
61
|
+
{:GET=>[:show_firewall_group_details],
|
62
|
+
:PUT=>[:update_firewall_group],
|
63
|
+
:DELETE=>[:delete_firewall_group]},
|
64
|
+
"/v2.0/fwaas/firewall_policies"=>{:GET=>[:list_firewall_policies], :POST=>[:create_firewall_policy]},
|
65
|
+
"/v2.0/fwaas/firewall_policies/{firewall_policy_id}"=>
|
66
|
+
{:GET=>[:show_firewall_policy_details], :PUT=>[:update_firewall_policy], :DELETE=>[:delete_firewall_policy]},
|
67
|
+
"/v2.0/fwaas/firewall_rules"=>{:GET=>[:list_firewall_rules], :POST=>[:create_firewall_rule]},
|
68
|
+
"/v2.0/fwaas/firewall_rules/{firewall_rule_id}"=>
|
69
|
+
{:GET=>[:show_firewall_rule_details], :PUT=>[:update_firewall_rule], :DELETE=>[:delete_firewall_rule]},
|
70
|
+
"/v2.0/fwaas/firewall_policies/{firewall_policy_id}/insert_rule"=>
|
71
|
+
{:PUT=>[:insert_rule_into_a_firewall_policy]},
|
72
|
+
"/v2.0/fwaas/firewall_policies/{firewall_policy_id}/remove_rule"=>
|
73
|
+
{:PUT=>[:remove_rule_from_firewall_policy]},
|
74
|
+
"/v2.0/security-group-rules"=>
|
75
|
+
{:GET=>[:list_security_group_rules], :POST=>[:create_security_group_rule]},
|
76
|
+
"/v2.0/security-group-rules/{security_group_rule_id}"=>
|
77
|
+
{:GET=>[:show_security_group_rule], :DELETE=>[:delete_security_group_rule]},
|
78
|
+
"/v2.0/security-groups"=>
|
79
|
+
{:GET=>[:list_security_groups], :POST=>[:create_security_group]},
|
80
|
+
"/v2.0/security-groups/{security_group_id}"=>
|
81
|
+
{:GET=>[:show_security_group],
|
82
|
+
:PUT=>[:update_security_group],
|
83
|
+
:DELETE=>[:delete_security_group]},
|
84
|
+
"/v2.0/vpn/ikepolicies"=>
|
85
|
+
{:GET=>[:list_ike_policies], :POST=>[:create_ike_policy]},
|
86
|
+
"/v2.0/vpn/ikepolicies/{ikepolicy_id}"=>
|
87
|
+
{:GET=>[:show_ike_policy_details],
|
88
|
+
:PUT=>[:update_ike_policy],
|
89
|
+
:DELETE=>[:remove_ike_policy]},
|
90
|
+
"/v2.0/vpn/ipsecpolicies"=>
|
91
|
+
{:GET=>[:list_ipsec_policies], :POST=>[:create_ipsec_policy]},
|
92
|
+
"/v2.0/vpn/ipsecpolicies/{ipsecpolicy_id}"=>
|
93
|
+
{:GET=>[:show_ipsec_policy],
|
94
|
+
:PUT=>[:update_ipsec_policy],
|
95
|
+
:DELETE=>[:remove_ipsec_policy]},
|
96
|
+
"/v2.0/vpn/ipsec-site-connections"=>
|
97
|
+
{:GET=>[:list_ipsec_connections], :POST=>[:create_ipsec_connection]},
|
98
|
+
"/v2.0/vpn/ipsec-site-connections/{connection_id}"=>
|
99
|
+
{:GET=>[:show_ipsec_connection],
|
100
|
+
:PUT=>[:update_ipsec_connection],
|
101
|
+
:DELETE=>[:remove_ipsec_connection]},
|
102
|
+
"/v2.0/vpn/endpoint-groups"=>
|
103
|
+
{:GET=>[:list_vpn_endpoint_groups], :POST=>[:create_vpn_endpoint_group]},
|
104
|
+
"/v2.0/vpn/endpoint-groups/{endpoint_group_id}"=>
|
105
|
+
{:GET=>[:show_vpn_endpoint_group],
|
106
|
+
:PUT=>[:update_vpn_endpoint_group],
|
107
|
+
:DELETE=>[:remove_vpn_endpoint_group]},
|
108
|
+
"/v2.0/vpn/vpnservices"=>
|
109
|
+
{:GET=>[:list_vpn_services], :POST=>[:create_vpn_service]},
|
110
|
+
"/v2.0/vpn/vpnservices/{service_id}"=>
|
111
|
+
{:GET=>[:show_vpn_service_details],
|
112
|
+
:PUT=>[:update_vpn_service],
|
113
|
+
:DELETE=>[:remove_vpn_service]},
|
114
|
+
"/v2.0/flavors"=>{:GET=>[:list_flavors], :POST=>[:create_flavor]},
|
115
|
+
"/v2.0/flavors/{flavor_id}"=>
|
116
|
+
{:GET=>[:show_flavor_details],
|
117
|
+
:PUT=>[:update_flavor],
|
118
|
+
:DELETE=>[:delete_flavor]},
|
119
|
+
"/v2.0/flavors/{flavor_id}/service_profiles"=>
|
120
|
+
{:POST=>[:associate_flavor_with_a_service_profile]},
|
121
|
+
"/v2.0/flavors/{flavor_id}/service_profiles/{profile_id}"=>
|
122
|
+
{:DELETE=>[:disassociate_a_flavor]},
|
123
|
+
"/v2.0/service_profiles"=>
|
124
|
+
{:GET=>[:list_service_profiles], :POST=>[:create_service_profile]},
|
125
|
+
"/v2.0/service_profiles/{profile_id}"=>
|
126
|
+
{:GET=>[:show_service_profile_details],
|
127
|
+
:PUT=>[:update_service_profile],
|
128
|
+
:DELETE=>[:delete_service_profile]},
|
129
|
+
"/v2.0/metering/metering-labels"=>
|
130
|
+
{:GET=>[:list_metering_labels], :POST=>[:create_metering_label]},
|
131
|
+
"/v2.0/metering/metering-labels/{metering_label_id}"=>
|
132
|
+
{:GET=>[:show_metering_label_details], :DELETE=>[:delete_metering_label]},
|
133
|
+
"/v2.0/metering/metering-label-rules"=>
|
134
|
+
{:GET=>[:list_metering_label_rules], :POST=>[:create_metering_label_rule]},
|
135
|
+
"/v2.0/metering/metering-label-rules/{metering_label_rule_id}"=>
|
136
|
+
{:GET=>[:show_metering_label_rule_details],
|
137
|
+
:DELETE=>[:delete_metering_label_rule]},
|
138
|
+
"/v2.0/network-ip-availabilities/{network_id}"=>
|
139
|
+
{:GET=>[:show_network_ip_availability]},
|
140
|
+
"/v2.0/network-ip-availabilities"=>{:GET=>[:list_network_ip_availability]},
|
141
|
+
"/v2.0/quotas"=>
|
142
|
+
{:GET=>[:list_quotas_for_projects_with_non_default_quota_values]},
|
143
|
+
"/v2.0/quotas/{project_id}"=>
|
144
|
+
{:GET=>[:list_quotas_for_a_project],
|
145
|
+
:PUT=>[:update_quota_for_a_project],
|
146
|
+
:DELETE=>[:reset_quota_for_a_project]},
|
147
|
+
"/v2.0/quotas/{project_id}/default"=>
|
148
|
+
{:GET=>[:list_default_quotas_for_a_project]},
|
149
|
+
"/v2.0/service-providers"=>{:GET=>[:list_service_providers]},
|
150
|
+
"/v2.0/{resource_type}/{resource_id}/tags"=>
|
151
|
+
{:PUT=>[:replace_all_tags],
|
152
|
+
:DELETE=>[:remove_all_tags],
|
153
|
+
:GET=>[:obtain_tag_list]},
|
154
|
+
"/v2.0/{resource_type}/{resource_id}/tags/{tag}"=>
|
155
|
+
{:GET=>[:confirm_a_tag], :PUT=>[:add_a_tag], :DELETE=>[:remove_a_tag]},
|
156
|
+
"/v2.0/qos/policies/{policy_id}/bandwidth_limit_rules/{rule_id}"=>
|
157
|
+
{:GET=>[:show_bandwidth_limit_rule_details],
|
158
|
+
:PUT=>[:update_bandwidth_limit_rule],
|
159
|
+
:DELETE=>[:delete_bandwidth_limit_rule]},
|
160
|
+
"/v2.0/qos/policies"=>
|
161
|
+
{:GET=>[:list_qos_policies], :POST=>[:create_qos_policy]},
|
162
|
+
"/v2.0/qos/policies/{policy_id}/dscp_marking_rules/{dscp_rule_id}"=>
|
163
|
+
{:GET=>[:show_dscp_marking_rule_details],
|
164
|
+
:PUT=>[:update_dscp_marking_rule],
|
165
|
+
:DELETE=>[:delete_dscp_marking_rule]},
|
166
|
+
"/v2.0/qos/policies/{policy_id}/dscp_marking_rules"=>
|
167
|
+
{:GET=>[:list_dscp_marking_rules_for_qos_policy],
|
168
|
+
:POST=>[:create_dscp_marking_rule]},
|
169
|
+
"/v2.0/qos/policies/{policy_id}"=>
|
170
|
+
{:GET=>[:show_qos_policy_details],
|
171
|
+
:PUT=>[:update_qos_policy],
|
172
|
+
:DELETE=>[:delete_qos_policy]},
|
173
|
+
"/v2.0/qos/policies/{policy_id}/bandwidth_limit_rules"=>
|
174
|
+
{:GET=>[:list_bandwidth_limit_rules_for_qos_policy],
|
175
|
+
:POST=>[:create_bandwidth_limit_rule]},
|
176
|
+
"/v2.0/lbaas/loadbalancers"=>
|
177
|
+
{:GET=>[:list_load_balancers], :POST=>[:create_a_load_balancer]},
|
178
|
+
"/v2.0/lbaas/loadbalancers/{loadbalancer_id}"=>
|
179
|
+
{:GET=>[:show_load_balancer_details],
|
180
|
+
:PUT=>[:update_load_balancer],
|
181
|
+
:DELETE=>[:remove_load_balancer]},
|
182
|
+
"/v2.0/lbaas/loadbalancers/{loadbalancer_id}/statuses"=>
|
183
|
+
{:GET=>[:show_load_balancer_status_tree]},
|
184
|
+
"/v2.0/lbaas/listeners"=>{:GET=>[:list_listeners], :POST=>[:create_listener]},
|
185
|
+
"/v2.0/lbaas/listeners/{listener_id}"=>
|
186
|
+
{:GET=>[:show_listener_details],
|
187
|
+
:PUT=>[:update_listener],
|
188
|
+
:DELETE=>[:remove_listener]},
|
189
|
+
"/v2.0/lbaas/pools"=>{:GET=>[:list_pools], :POST=>[:create_pool]},
|
190
|
+
"/v2.0/lbaas/pools/{pool_id}"=>
|
191
|
+
{:GET=>[:show_pool_details], :PUT=>[:update_pool], :DELETE=>[:remove_pool]},
|
192
|
+
"/v2.0/lbaas/pools/{pool_id}/members"=>
|
193
|
+
{:GET=>[:list_pool_members], :POST=>[:add_member_to_pool]},
|
194
|
+
"/v2.0/lbaas/pools/{pool_id}/members/{member_id}"=>
|
195
|
+
{:GET=>[:show_pool_member_details],
|
196
|
+
:PUT=>[:update_pool_member],
|
197
|
+
:DELETE=>[:remove_member_from_pool]},
|
198
|
+
"/v2.0/lbaas/healthmonitors"=>{:GET=>[:list_health_monitors]},
|
199
|
+
"/v2.0/lbaas/health_monitors"=>{:POST=>[:create_health_monitor]},
|
200
|
+
"/v2.0/lbaas/health_monitors/{health_monitor_id}"=>
|
201
|
+
{:GET=>[:show_health_monitor_details],
|
202
|
+
:PUT=>[:update_health_monitor],
|
203
|
+
:DELETE=>[:remove_health_monitor]}}
|
204
|
+
end
|
205
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'misty/http/client'
|
2
|
+
require "misty/openstack/neutron/neutron_v2_0"
|
3
|
+
|
4
|
+
module Misty
|
5
|
+
module Openstack
|
6
|
+
module Neutron
|
7
|
+
class V2_0 < Misty::HTTP::Client
|
8
|
+
extend Misty::Openstack::NeutronV2_0
|
9
|
+
|
10
|
+
def self.api
|
11
|
+
v2_0
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.service_names
|
15
|
+
%w{network networking}
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,269 @@
|
|
1
|
+
module Misty::Openstack::NovaV2_1
|
2
|
+
def v2_1
|
3
|
+
{"/"=>{:GET=>[:list_all_major_versions]},
|
4
|
+
"/{api_version}"=>{:GET=>[:show_details_of_specific_api_version]},
|
5
|
+
"/servers"=>
|
6
|
+
{:GET=>[:list_servers], :POST=>[:create_server, :create_multiple_servers]},
|
7
|
+
"/servers/detail"=>{:GET=>[:list_servers_detailed]},
|
8
|
+
"/servers/{server_id}"=>
|
9
|
+
{:GET=>[:show_server_details],
|
10
|
+
:PUT=>[:update_server],
|
11
|
+
:DELETE=>[:delete_server]},
|
12
|
+
"/servers/{server_id}/action"=>
|
13
|
+
{:POST=>
|
14
|
+
[:add_associate_floating_ip_addfloatingip_action,
|
15
|
+
:add_security_group_to_a_server_addsecuritygroup_action,
|
16
|
+
:change_administrative_password_changepassword_action,
|
17
|
+
:confirm_resized_server_confirmresize_action,
|
18
|
+
:create_image_createimage_action,
|
19
|
+
:lock_server_lock_action,
|
20
|
+
:pause_server_pause_action,
|
21
|
+
:reboot_server_reboot_action,
|
22
|
+
:rebuild_server_rebuild_action,
|
23
|
+
:remove_disassociate_floating_ip_removefloatingip_action,
|
24
|
+
:remove_security_group_from_a_server_removesecuritygroup_action,
|
25
|
+
:rescue_server_rescue_action,
|
26
|
+
:resize_server_resize_action,
|
27
|
+
:resume_suspended_server_resume_action,
|
28
|
+
:revert_resized_server_revertresize_action,
|
29
|
+
:start_server_os_start_action,
|
30
|
+
:stop_server_os_stop_action,
|
31
|
+
:suspend_server_suspend_action,
|
32
|
+
:unlock_server_unlock_action,
|
33
|
+
:unpause_server_unpause_action,
|
34
|
+
:unrescue_server_unrescue_action,
|
35
|
+
:add_associate_fixed_ip_addfixedip_action,
|
36
|
+
:remove_disassociate_fixed_ip_removefixedip_action,
|
37
|
+
:evacuate_server_evacuate_action,
|
38
|
+
:force_delete_server_forcedelete_action,
|
39
|
+
:restore_soft_deleted_instance_restore_action,
|
40
|
+
:show_console_output_os_getconsoleoutput_action,
|
41
|
+
:get_rdp_console_os_getrdpconsole_action,
|
42
|
+
:get_serial_console_os_getserialconsole_action,
|
43
|
+
:get_spice_console_os_getspiceconsole_action,
|
44
|
+
:get_vnc_console_os_getvncconsole_action,
|
45
|
+
:shelve_server_shelve_action,
|
46
|
+
:shelf_offload_remove_server_shelveoffload_action,
|
47
|
+
:unshelve_restore_shelved_server_unshelve_action,
|
48
|
+
:trigger_crash_dump_in_server,
|
49
|
+
:create_server_back_up_createbackup_action,
|
50
|
+
:inject_network_information_injectnetworkinfo_action,
|
51
|
+
:migrate_server_migrate_action,
|
52
|
+
:live_migrate_server_os_migratelive_action,
|
53
|
+
:reset_networking_on_a_server_resetnetwork_action,
|
54
|
+
:reset_server_state_os_resetstate_action]},
|
55
|
+
"/servers/{server_id}/os-security-groups"=>
|
56
|
+
{:GET=>[:list_security_groups_by_server]},
|
57
|
+
"/servers/{server_id}/diagnostics"=>{:GET=>[:show_server_diagnostics]},
|
58
|
+
"/servers/{server_id}/ips"=>{:GET=>[:list_ips]},
|
59
|
+
"/servers/{server_id}/ips/{network_label}"=>{:GET=>[:show_ip_details]},
|
60
|
+
"/servers/{server_id}/metadata"=>
|
61
|
+
{:GET=>[:list_all_metadata],
|
62
|
+
:POST=>[:update_metadata_items],
|
63
|
+
:PUT=>[:create_or_replace_metadata_items]},
|
64
|
+
"/servers/{server_id}/metadata/{key}"=>
|
65
|
+
{:GET=>[:show_metadata_item_details],
|
66
|
+
:PUT=>[:create_or_update_metadata_item],
|
67
|
+
:DELETE=>[:delete_metadata_item]},
|
68
|
+
"/servers/{server_id}/os-instance-actions"=>
|
69
|
+
{:GET=>[:list_actions_for_server]},
|
70
|
+
"/servers/{server_id}/os-instance-actions/{request_id}"=>
|
71
|
+
{:GET=>[:show_server_action_details]},
|
72
|
+
"/servers/{server_id}/os-interface"=>
|
73
|
+
{:GET=>[:list_port_interfaces], :POST=>[:create_interface]},
|
74
|
+
"/servers/{server_id}/os-interface/{port_id}"=>
|
75
|
+
{:GET=>[:show_port_interface_details], :DELETE=>[:detach_interface]},
|
76
|
+
"/servers/{server_id}/os-server-password"=>
|
77
|
+
{:GET=>[:show_server_password], :DELETE=>[:clear_admin_password]},
|
78
|
+
"/servers/{server_id}/os-virtual-interfaces"=>
|
79
|
+
{:GET=>[:list_virtual_interfaces]},
|
80
|
+
"/servers/{server_id}/os-volume_attachments"=>
|
81
|
+
{:GET=>[:list_volume_attachments_for_an_instance],
|
82
|
+
:POST=>[:attach_a_volume_to_an_instance]},
|
83
|
+
"/servers/{server_id}/os-volume_attachments/{attachment_id}"=>
|
84
|
+
{:GET=>[:show_a_detail_of_a_volume_attachment],
|
85
|
+
:PUT=>[:update_a_volume_attachment],
|
86
|
+
:DELETE=>[:detach_a_volume_from_an_instance]},
|
87
|
+
"/flavors"=>{:GET=>[:list_flavors], :POST=>[:create_flavor]},
|
88
|
+
"/flavors/detail"=>{:GET=>[:list_flavors_with_details]},
|
89
|
+
"/flavors/{flavor_id}"=>
|
90
|
+
{:GET=>[:show_flavor_details], :DELETE=>[:delete_flavor]},
|
91
|
+
"/flavors/{flavor_id}/os-flavor-access"=>
|
92
|
+
{:GET=>[:list_flavor_access_information_for_given_flavor]},
|
93
|
+
"/flavors/{flavor_id}/action"=>
|
94
|
+
{:POST=>
|
95
|
+
[:add_flavor_access_to_tenant_addtenantaccess_action,
|
96
|
+
:remove_flavor_access_from_tenant_removetenantaccess_action]},
|
97
|
+
"/flavors/{flavor_id}/os-extra_specs"=>
|
98
|
+
{:GET=>[:list_extra_specs_for_a_flavor],
|
99
|
+
:POST=>[:create_extra_specs_for_a_flavor]},
|
100
|
+
"/flavors/{flavor_id}/os-extra_specs/{flavor_extra_spec_key}"=>
|
101
|
+
{:GET=>[:show_an_extra_spec_for_a_flavor],
|
102
|
+
:PUT=>[:update_an_extra_spec_for_a_flavor],
|
103
|
+
:DELETE=>[:delete_an_extra_spec_for_a_flavor]},
|
104
|
+
"/os-keypairs"=>{:GET=>[:list_keypairs], :POST=>[:create_or_import_keypair]},
|
105
|
+
"/os-keypairs/{keypair_name}"=>
|
106
|
+
{:GET=>[:show_keypair_details], :DELETE=>[:delete_keypair]},
|
107
|
+
"/limits"=>{:GET=>[:show_rate_and_absolute_limits]},
|
108
|
+
"/os-agents"=>{:GET=>[:list_agent_builds], :POST=>[:create_agent_build]},
|
109
|
+
"/os-agents/{agent_build_id}"=>
|
110
|
+
{:PUT=>[:update_agent_build], :DELETE=>[:delete_agent_build]},
|
111
|
+
"/os-aggregates"=>{:GET=>[:list_aggregates], :POST=>[:create_aggregate]},
|
112
|
+
"/os-aggregates/{aggregate_id}"=>
|
113
|
+
{:GET=>[:show_aggregate_details],
|
114
|
+
:PUT=>[:update_aggregate],
|
115
|
+
:DELETE=>[:delete_aggregate]},
|
116
|
+
"/os-aggregates/{aggregate_id}/action"=>
|
117
|
+
{:POST=>[:add_host, :remove_host, :create_or_update_aggregate_metadata]},
|
118
|
+
"/os-assisted-volume-snapshots"=>{:POST=>[:create_assisted_volume_snapshots]},
|
119
|
+
"/os-assisted-volume-snapshots/{snapshot_id}"=>
|
120
|
+
{:DELETE=>[:delete_assisted_volume_snapshot]},
|
121
|
+
"/os-availability-zone"=>{:GET=>[:get_availability_zone_information]},
|
122
|
+
"/os-availability-zone/detail"=>
|
123
|
+
{:GET=>[:get_detailed_availability_zone_information]},
|
124
|
+
"/os-cells"=>{:GET=>[:list_cells], :POST=>[:create_cell]},
|
125
|
+
"/os-cells/capacities"=>{:GET=>[:capacities]},
|
126
|
+
"/os-cells/detail"=>{:GET=>[:list_cells_with_details]},
|
127
|
+
"/os-cells/info"=>{:GET=>[:info_for_this_cell]},
|
128
|
+
"/os-cells/{cell_id}"=>{:GET=>[:show_cell_data], :DELETE=>[:delete_a_cell]},
|
129
|
+
"/os-cells/{cell_od}"=>{:PUT=>[:update_a_cell]},
|
130
|
+
"/os-cells/{cell_id}/capacities"=>{:GET=>[:show_cell_capacities]},
|
131
|
+
"/servers/{server_id}/consoles"=>
|
132
|
+
{:GET=>[:lists_consoles], :POST=>[:create_console]},
|
133
|
+
"/servers/{server_id}/consoles/{console_id}"=>
|
134
|
+
{:GET=>[:show_console_details], :DELETE=>[:delete_console]},
|
135
|
+
"/os-console-auth-tokens/{console_token}"=>
|
136
|
+
{:GET=>[:show_console_connection_information]},
|
137
|
+
"/os-hosts"=>{:GET=>[:list_hosts]},
|
138
|
+
"/os-hosts/{host_name}"=>
|
139
|
+
{:GET=>[:show_host_details], :PUT=>[:update_host_status]},
|
140
|
+
"/os-hosts/{host_name}/reboot"=>{:GET=>[:reboot_host]},
|
141
|
+
"/os-hosts/{host_name}/shutdown"=>{:GET=>[:shut_down_host]},
|
142
|
+
"/os-hosts/{host_name}/startup"=>{:GET=>[:start_host]},
|
143
|
+
"/os-hypervisors"=>{:GET=>[:list_hypervisors]},
|
144
|
+
"/os-hypervisors/detail"=>{:GET=>[:list_hypervisors_details]},
|
145
|
+
"/os-hypervisors/statistics"=>{:GET=>[:show_hypervisor_statistics]},
|
146
|
+
"/os-hypervisors/{hypervisor_id}"=>{:GET=>[:show_hypervisor_details]},
|
147
|
+
"/os-hypervisors/{hypervisor_id}/uptime"=>{:GET=>[:show_hypervisor_uptime]},
|
148
|
+
"/os-hypervisors/{hypervisor_hostname_pattern}/search"=>
|
149
|
+
{:GET=>[:search_hypervisor]},
|
150
|
+
"/os-hypervisors/{hypervisor_hostname_pattern}/servers"=>
|
151
|
+
{:GET=>[:list_hypervisor_servers]},
|
152
|
+
"/os-instance_usage_audit_log"=>{:GET=>[:list_server_usage_audits]},
|
153
|
+
"/os-instance_usage_audit_log/{before_timestamp}"=>
|
154
|
+
{:GET=>[:list_usage_audits_before_specified_time]},
|
155
|
+
"/servers/{server_id}/migrations"=>{:GET=>[:list_migrations]},
|
156
|
+
"/servers/{server_id}/migrations/{migration_id}"=>
|
157
|
+
{:GET=>[:show_migration_details], :DELETE=>[:delete_abort_migration]},
|
158
|
+
"/servers/{server_id}/migrations/{migration_id}/action"=>
|
159
|
+
{:POST=>[:force_migration_complete_action_force_complete_action]},
|
160
|
+
"/os-quota-sets/{tenant_id}"=>
|
161
|
+
{:GET=>[:show_a_quota],
|
162
|
+
:PUT=>[:update_quotas],
|
163
|
+
:DELETE=>[:revert_quotas_to_defaults]},
|
164
|
+
"/os-quota-sets/{tenant_id}/defaults"=>
|
165
|
+
{:GET=>[:list_default_quotas_for_tenant]},
|
166
|
+
"/os-quota-sets/{tenant_id}/detail"=>{:GET=>[:show_the_detail_of_quota]},
|
167
|
+
"/os-server-groups"=>
|
168
|
+
{:GET=>[:list_server_groups], :POST=>[:create_server_group]},
|
169
|
+
"/os-server-groups/{server_group_id}"=>
|
170
|
+
{:GET=>[:show_server_group_details], :DELETE=>[:delete_server_group]},
|
171
|
+
"/servers/{server_id}/tags"=>
|
172
|
+
{:GET=>[:list_tags], :PUT=>[:replace_tags], :DELETE=>[:delete_all_tags]},
|
173
|
+
"/servers/{server_id}/tags/{tag}"=>
|
174
|
+
{:GET=>[:check_tag_existence],
|
175
|
+
:PUT=>[:add_a_single_tag],
|
176
|
+
:DELETE=>[:delete_a_single_tag]},
|
177
|
+
"/os-services"=>{:GET=>[:list_compute_services]},
|
178
|
+
"/os-services/disable"=>{:PUT=>[:disable_scheduling_for_a_compute_service]},
|
179
|
+
"/os-services/disable-log-reason"=>
|
180
|
+
{:PUT=>[:log_disabled_compute_service_information]},
|
181
|
+
"/os-services/enable"=>{:PUT=>[:enable_scheduling_for_a_compute_service]},
|
182
|
+
"/os-services/force-down"=>{:PUT=>[:update_forced_down]},
|
183
|
+
"/os-services/{service_id}"=>{:DELETE=>[:delete_compute_service]},
|
184
|
+
"/os-simple-tenant-usage"=>
|
185
|
+
{:GET=>[:list_tenant_usage_statistics_for_all_tenants]},
|
186
|
+
"/os-simple-tenant-usage/{tenant_id}"=>
|
187
|
+
{:GET=>[:show_usage_statistics_for_tenant]},
|
188
|
+
"/os-server-external-events"=>{:POST=>[:run_events]},
|
189
|
+
"/os-cloudpipe"=>{:GET=>[:list_cloudpipes], :POST=>[:create_cloudpipe]},
|
190
|
+
"/os-cloudpipe/configure-project"=>{:PUT=>[:update_cloudpipe]},
|
191
|
+
"/extensions"=>{:GET=>[:list_extensions]},
|
192
|
+
"/extensions/{alias}"=>{:GET=>[:show_extension_details]},
|
193
|
+
"/os-certificates"=>{:POST=>[:create_root_certificate]},
|
194
|
+
"/os-certificates/root"=>{:GET=>[:show_root_certificate_details]},
|
195
|
+
"/os-networks"=>{:GET=>[:list_networks], :POST=>[:create_network]},
|
196
|
+
"/os-networks/add"=>{:POST=>[:add_network]},
|
197
|
+
"/os-networks/{network_id}"=>
|
198
|
+
{:GET=>[:show_network_details], :DELETE=>[:delete_network]},
|
199
|
+
"/os-networks/{network_id}/action"=>
|
200
|
+
{:POST=>
|
201
|
+
[:associate_host_deprecated,
|
202
|
+
:disassociate_network_deprecated,
|
203
|
+
:disassociate_host_deprecated,
|
204
|
+
:disassociate_project_deprecated]},
|
205
|
+
"/os-volumes"=>{:GET=>[:list_volumes], :POST=>[:create_volume]},
|
206
|
+
"/os-volumes/detail"=>{:GET=>[:list_volumes_with_details]},
|
207
|
+
"/os-volumes/{volume_id}"=>
|
208
|
+
{:GET=>[:show_volume_details], :DELETE=>[:delete_volume]},
|
209
|
+
"/os-snapshots"=>{:GET=>[:list_snapshots], :POST=>[:create_snapshot]},
|
210
|
+
"/os-snapshots/detail"=>{:GET=>[:list_snapshots_with_details]},
|
211
|
+
"/os-snapshots/{snapshot_id}"=>
|
212
|
+
{:GET=>[:show_snapshot_details], :DELETE=>[:delete_snapshot]},
|
213
|
+
"/images"=>{:GET=>[:list_images]},
|
214
|
+
"/images/detail"=>{:GET=>[:list_images_with_details]},
|
215
|
+
"/images/{image_id}"=>{:GET=>[:show_image_details], :DELETE=>[:delete_image]},
|
216
|
+
"/images/{image_id}/metadata"=>
|
217
|
+
{:GET=>[:list_image_metadata],
|
218
|
+
:POST=>[:create_image_metadata],
|
219
|
+
:PUT=>[:update_image_metadata]},
|
220
|
+
"/images/{image_id}/metadata/{key}"=>
|
221
|
+
{:GET=>[:show_image_metadata_item],
|
222
|
+
:PUT=>[:create_or_update_image_metadata_item],
|
223
|
+
:DELETE=>[:delete_image_metadata_item]},
|
224
|
+
"/os-baremetal-nodes"=>{:GET=>[:list_bare_metal_nodes]},
|
225
|
+
"/os-baremetal-nodes/{node_id}"=>{:GET=>[:show_bare_metal_node_details]},
|
226
|
+
"/os-tenant-networks"=>
|
227
|
+
{:GET=>[:list_project_networks], :POST=>[:create_project_network]},
|
228
|
+
"/os-tenant-networks/{network_id}"=>
|
229
|
+
{:GET=>[:show_project_network_details], :DELETE=>[:delete_project_network]},
|
230
|
+
"/os-fixed-ips/{fixed_ip}"=>{:GET=>[:show_fixed_ip_details]},
|
231
|
+
"/os-fixed-ips/{fixed_ip}/action"=>{:POST=>[:reserve_or_release_a_fixed_ip]},
|
232
|
+
"/os-floating-ip-dns"=>{:GET=>[:list_dns_domains]},
|
233
|
+
"/os-floating-ip-dns/{domain}"=>
|
234
|
+
{:PUT=>[:create_or_update_dns_domain], :DELETE=>[:delete_dns_domain]},
|
235
|
+
"/os-floating-ip-dns/{domain}/entries/{ip}"=>{:GET=>[:list_dns_entries]},
|
236
|
+
"/os-floating-ip-dns/{domain}/entries/{name}"=>
|
237
|
+
{:GET=>[:find_unique_dns_entry],
|
238
|
+
:PUT=>[:create_or_update_dns_entry],
|
239
|
+
:DELETE=>[:delete_dns_entry]},
|
240
|
+
"/os-floating-ip-pools"=>{:GET=>[:list_floating_ip_pools]},
|
241
|
+
"/os-floating-ips"=>
|
242
|
+
{:GET=>[:list_floating_ip_addresses],
|
243
|
+
:POST=>[:create_allocate_floating_ip_address]},
|
244
|
+
"/os-floating-ips/{floating_ip_id}"=>
|
245
|
+
{:GET=>[:show_floating_ip_address_details],
|
246
|
+
:DELETE=>[:delete_deallocate_floating_ip_address]},
|
247
|
+
"/os-floating-ips-bulk"=>
|
248
|
+
{:GET=>[:list_floating_ips], :POST=>[:create_floating_ips]},
|
249
|
+
"/os-floating-ips-bulk/delete"=>{:PUT=>[:bulk_delete_floating_ips]},
|
250
|
+
"/os-floating-ips-bulk/{host_name}"=>{:GET=>[:list_floating_ips_by_host]},
|
251
|
+
"/os-fping"=>{:GET=>[:ping_instances]},
|
252
|
+
"/os-fping/{instance_id}"=>{:GET=>[:ping_an_instance]},
|
253
|
+
"/os-security-groups"=>
|
254
|
+
{:GET=>[:list_security_groups], :POST=>[:create_security_group]},
|
255
|
+
"/os-security-groups/{security_group_id}"=>
|
256
|
+
{:GET=>[:show_security_group_details],
|
257
|
+
:PUT=>[:update_security_group],
|
258
|
+
:DELETE=>[:delete_security_group]},
|
259
|
+
"/os-security-group-default-rules"=>
|
260
|
+
{:GET=>[:list_default_security_group_rules],
|
261
|
+
:POST=>[:create_default_security_group_rule]},
|
262
|
+
"/os-security-group-default-rules/{security_group_default_rule_id}"=>
|
263
|
+
{:GET=>[:show_default_security_group_rule_details],
|
264
|
+
:DELETE=>[:delete_default_security_group_rule]},
|
265
|
+
"/os-security-group-rules"=>{:POST=>[:create_security_group_rule]},
|
266
|
+
"/os-security-group-rules/{security_group_rule_id}"=>
|
267
|
+
{:DELETE=>[:delete_security_group_rule]}}
|
268
|
+
end
|
269
|
+
end
|