morpheus-cli 5.3.0.3 → 5.3.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Dockerfile +1 -1
- data/README.md +1 -3
- data/lib/morpheus/api/account_groups_interface.rb +0 -6
- data/lib/morpheus/api/accounts_interface.rb +4 -36
- data/lib/morpheus/api/api_client.rb +167 -119
- data/lib/morpheus/api/appliance_settings_interface.rb +6 -9
- data/lib/morpheus/api/approvals_interface.rb +5 -8
- data/lib/morpheus/api/apps_interface.rb +0 -7
- data/lib/morpheus/api/archive_buckets_interface.rb +9 -16
- data/lib/morpheus/api/archive_files_interface.rb +0 -6
- data/lib/morpheus/api/auth_interface.rb +4 -4
- data/lib/morpheus/api/backup_settings_interface.rb +5 -8
- data/lib/morpheus/api/blueprints_interface.rb +1 -7
- data/lib/morpheus/api/budgets_interface.rb +0 -6
- data/lib/morpheus/api/certificate_types_interface.rb +14 -0
- data/lib/morpheus/api/certificates_interface.rb +9 -0
- data/lib/morpheus/api/cloud_datastores_interface.rb +0 -6
- data/lib/morpheus/api/cloud_folders_interface.rb +1 -7
- data/lib/morpheus/api/cloud_policies_interface.rb +0 -6
- data/lib/morpheus/api/cloud_resource_pools_interface.rb +0 -6
- data/lib/morpheus/api/clouds_interface.rb +0 -6
- data/lib/morpheus/api/clusters_interface.rb +39 -42
- data/lib/morpheus/api/containers_interface.rb +0 -6
- data/lib/morpheus/api/custom_instance_types_interface.rb +0 -6
- data/lib/morpheus/api/cypher_interface.rb +0 -6
- data/lib/morpheus/api/datastores_interface.rb +4 -7
- data/lib/morpheus/api/deploy_interface.rb +1 -6
- data/lib/morpheus/api/environments_interface.rb +0 -6
- data/lib/morpheus/api/execute_schedules_interface.rb +0 -6
- data/lib/morpheus/api/execution_request_interface.rb +0 -6
- data/lib/morpheus/api/file_copy_request_interface.rb +2 -9
- data/lib/morpheus/api/group_policies_interface.rb +0 -6
- data/lib/morpheus/api/groups_interface.rb +0 -7
- data/lib/morpheus/api/guidance_interface.rb +9 -12
- data/lib/morpheus/api/health_interface.rb +0 -6
- data/lib/morpheus/api/image_builder_boot_scripts_interface.rb +0 -6
- data/lib/morpheus/api/image_builder_image_builds_interface.rb +0 -6
- data/lib/morpheus/api/image_builder_interface.rb +3 -9
- data/lib/morpheus/api/image_builder_preseed_scripts_interface.rb +0 -6
- data/lib/morpheus/api/instance_types_interface.rb +0 -7
- data/lib/morpheus/api/instances_interface.rb +8 -19
- data/lib/morpheus/api/integration_types_interface.rb +14 -0
- data/lib/morpheus/api/integrations_interface.rb +36 -21
- data/lib/morpheus/api/invoice_line_items_interface.rb +4 -9
- data/lib/morpheus/api/jobs_interface.rb +11 -14
- data/lib/morpheus/api/key_pairs_interface.rb +0 -6
- data/lib/morpheus/api/library_cluster_layouts_interface.rb +0 -6
- data/lib/morpheus/api/library_container_scripts_interface.rb +0 -6
- data/lib/morpheus/api/library_container_templates_interface.rb +0 -6
- data/lib/morpheus/api/library_container_types_interface.rb +0 -6
- data/lib/morpheus/api/library_container_upgrades_interface.rb +0 -6
- data/lib/morpheus/api/library_instance_types_interface.rb +0 -6
- data/lib/morpheus/api/library_layouts_interface.rb +0 -6
- data/lib/morpheus/api/library_spec_template_types_interface.rb +0 -6
- data/lib/morpheus/api/library_spec_templates_interface.rb +0 -6
- data/lib/morpheus/api/license_interface.rb +0 -6
- data/lib/morpheus/api/load_balancer_pools_interface.rb +9 -0
- data/lib/morpheus/api/load_balancer_types_interface.rb +9 -0
- data/lib/morpheus/api/load_balancer_virtual_servers_interface.rb +9 -0
- data/lib/morpheus/api/load_balancers_interface.rb +4 -59
- data/lib/morpheus/api/log_settings_interface.rb +9 -12
- data/lib/morpheus/api/logs_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_alerts_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_apps_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_checks_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_contacts_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_groups_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_incidents_interface.rb +0 -6
- data/lib/morpheus/api/monitoring_interface.rb +6 -12
- data/lib/morpheus/api/network_domain_records_interface.rb +0 -6
- data/lib/morpheus/api/network_domains_interface.rb +0 -6
- data/lib/morpheus/api/network_groups_interface.rb +0 -6
- data/lib/morpheus/api/network_pool_ips_interface.rb +0 -6
- data/lib/morpheus/api/network_pool_servers_interface.rb +0 -6
- data/lib/morpheus/api/network_pools_interface.rb +0 -6
- data/lib/morpheus/api/network_proxies_interface.rb +0 -6
- data/lib/morpheus/api/network_routers_interface.rb +56 -6
- data/lib/morpheus/api/network_security_servers_interface.rb +6 -9
- data/lib/morpheus/api/network_services_interface.rb +14 -14
- data/lib/morpheus/api/network_subnets_interface.rb +0 -6
- data/lib/morpheus/api/network_types_interface.rb +1 -7
- data/lib/morpheus/api/networks_interface.rb +0 -6
- data/lib/morpheus/api/option_type_lists_interface.rb +18 -12
- data/lib/morpheus/api/option_types_interface.rb +0 -6
- data/lib/morpheus/api/options_interface.rb +0 -6
- data/lib/morpheus/api/packages_interface.rb +0 -6
- data/lib/morpheus/api/policies_interface.rb +1 -8
- data/lib/morpheus/api/power_schedules_interface.rb +0 -6
- data/lib/morpheus/api/price_sets_interface.rb +8 -11
- data/lib/morpheus/api/prices_interface.rb +12 -15
- data/lib/morpheus/api/processes_interface.rb +0 -6
- data/lib/morpheus/api/provision_types_interface.rb +0 -6
- data/lib/morpheus/api/provisioning_license_types_interface.rb +0 -6
- data/lib/morpheus/api/provisioning_licenses_interface.rb +0 -6
- data/lib/morpheus/api/provisioning_settings_interface.rb +6 -9
- data/lib/morpheus/api/read_interface.rb +23 -0
- data/lib/morpheus/api/reports_interface.rb +0 -6
- data/lib/morpheus/api/rest_interface.rb +12 -10
- data/lib/morpheus/api/roles_interface.rb +7 -6
- data/lib/morpheus/api/secondary_read_interface.rb +25 -0
- data/lib/morpheus/api/secondary_rest_interface.rb +42 -0
- data/lib/morpheus/api/security_group_rules_interface.rb +0 -7
- data/lib/morpheus/api/security_groups_interface.rb +0 -6
- data/lib/morpheus/api/server_types_interface.rb +0 -6
- data/lib/morpheus/api/servers_interface.rb +7 -6
- data/lib/morpheus/api/service_plans_interface.rb +11 -14
- data/lib/morpheus/api/storage_providers_interface.rb +9 -16
- data/lib/morpheus/api/subnet_types_interface.rb +1 -7
- data/lib/morpheus/api/subnets_interface.rb +0 -6
- data/lib/morpheus/api/task_sets_interface.rb +0 -6
- data/lib/morpheus/api/tasks_interface.rb +0 -6
- data/lib/morpheus/api/user_groups_interface.rb +0 -6
- data/lib/morpheus/api/user_settings_interface.rb +38 -18
- data/lib/morpheus/api/user_sources_interface.rb +0 -6
- data/lib/morpheus/api/users_interface.rb +0 -6
- data/lib/morpheus/api/vdi_allocations_interface.rb +9 -0
- data/lib/morpheus/api/vdi_apps_interface.rb +9 -0
- data/lib/morpheus/api/vdi_gateways_interface.rb +9 -0
- data/lib/morpheus/api/vdi_interface.rb +28 -0
- data/lib/morpheus/api/vdi_pools_interface.rb +19 -0
- data/lib/morpheus/api/virtual_images_interface.rb +0 -6
- data/lib/morpheus/api/whitelabel_settings_interface.rb +8 -11
- data/lib/morpheus/api/wiki_interface.rb +0 -6
- data/lib/morpheus/cli.rb +10 -2
- data/lib/morpheus/cli/access_token_command.rb +1 -1
- data/lib/morpheus/cli/account_groups_command.rb +4 -4
- data/lib/morpheus/cli/apps.rb +68 -84
- data/lib/morpheus/cli/archives_command.rb +5 -5
- data/lib/morpheus/cli/blueprints_command.rb +5 -5
- data/lib/morpheus/cli/boot_scripts_command.rb +1 -1
- data/lib/morpheus/cli/catalog_item_types_command.rb +13 -13
- data/lib/morpheus/cli/certificates_command.rb +575 -0
- data/lib/morpheus/cli/change_password_command.rb +4 -4
- data/lib/morpheus/cli/cli_command.rb +72 -16
- data/lib/morpheus/cli/clouds.rb +3 -2
- data/lib/morpheus/cli/clusters.rb +3 -3
- data/lib/morpheus/cli/commands/standard/man_command.rb +4 -5
- data/lib/morpheus/cli/credentials.rb +4 -11
- data/lib/morpheus/cli/environments_command.rb +1 -1
- data/lib/morpheus/cli/execute_schedules_command.rb +3 -3
- data/lib/morpheus/cli/hosts.rb +253 -232
- data/lib/morpheus/cli/image_builder_command.rb +6 -6
- data/lib/morpheus/cli/instance_types.rb +1 -1
- data/lib/morpheus/cli/instances.rb +229 -219
- data/lib/morpheus/cli/integrations_command.rb +1155 -42
- data/lib/morpheus/cli/invoices_command.rb +75 -67
- data/lib/morpheus/cli/key_pairs.rb +2 -2
- data/lib/morpheus/cli/library_cluster_layouts_command.rb +2 -3
- data/lib/morpheus/cli/library_container_scripts_command.rb +4 -5
- data/lib/morpheus/cli/library_container_templates_command.rb +5 -1
- data/lib/morpheus/cli/library_container_types_command.rb +8 -9
- data/lib/morpheus/cli/library_instance_types_command.rb +6 -7
- data/lib/morpheus/cli/library_layouts_command.rb +9 -5
- data/lib/morpheus/cli/library_option_lists_command.rb +72 -20
- data/lib/morpheus/cli/library_option_types_command.rb +8 -4
- data/lib/morpheus/cli/library_spec_templates_command.rb +3 -4
- data/lib/morpheus/cli/library_upgrades_command.rb +6 -6
- data/lib/morpheus/cli/license.rb +2 -2
- data/lib/morpheus/cli/load_balancer_types.rb +37 -0
- data/lib/morpheus/cli/load_balancers.rb +149 -314
- data/lib/morpheus/cli/log_settings_command.rb +7 -3
- data/lib/morpheus/cli/login.rb +10 -1
- data/lib/morpheus/cli/mixins/load_balancers_helper.rb +156 -0
- data/lib/morpheus/cli/mixins/print_helper.rb +44 -18
- data/lib/morpheus/cli/mixins/provisioning_helper.rb +4 -4
- data/lib/morpheus/cli/mixins/rest_command.rb +657 -0
- data/lib/morpheus/cli/mixins/vdi_helper.rb +246 -0
- data/lib/morpheus/cli/network_routers_command.rb +1187 -176
- data/lib/morpheus/cli/networks_command.rb +195 -102
- data/lib/morpheus/cli/option_types.rb +66 -71
- data/lib/morpheus/cli/policies_command.rb +0 -1
- data/lib/morpheus/cli/power_schedules_command.rb +3 -3
- data/lib/morpheus/cli/preseed_scripts_command.rb +1 -1
- data/lib/morpheus/cli/remote.rb +2 -2
- data/lib/morpheus/cli/reports_command.rb +4 -1
- data/lib/morpheus/cli/roles.rb +224 -64
- data/lib/morpheus/cli/security_group_rules.rb +1 -1
- data/lib/morpheus/cli/setup.rb +0 -1
- data/lib/morpheus/cli/subnets_command.rb +11 -2
- data/lib/morpheus/cli/tenants_command.rb +21 -23
- data/lib/morpheus/cli/user_groups_command.rb +3 -3
- data/lib/morpheus/cli/user_settings_command.rb +268 -57
- data/lib/morpheus/cli/user_sources_command.rb +3 -3
- data/lib/morpheus/cli/users.rb +3 -3
- data/lib/morpheus/cli/vdi_allocations_command.rb +159 -0
- data/lib/morpheus/cli/vdi_apps_command.rb +317 -0
- data/lib/morpheus/cli/vdi_command.rb +359 -0
- data/lib/morpheus/cli/vdi_gateways_command.rb +290 -0
- data/lib/morpheus/cli/vdi_pools_command.rb +571 -0
- data/lib/morpheus/cli/version.rb +1 -1
- data/lib/morpheus/cli/virtual_images.rb +1 -1
- data/lib/morpheus/cli/whoami.rb +0 -15
- data/lib/morpheus/cli/wiki_command.rb +1 -1
- data/lib/morpheus/ext/string.rb +41 -0
- data/lib/morpheus/formatters.rb +4 -0
- data/lib/morpheus/rest_client.rb +30 -0
- data/lib/morpheus/terminal.rb +15 -7
- metadata +27 -2
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::OptionTypesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def get(id)
|
|
12
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::OptionsInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def options_for_source(source,params = {})
|
|
12
6
|
url = "#{@base_url}/api/options/#{source}"
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::PackagesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
# def get(id)
|
|
12
6
|
# raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -1,13 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
|
-
require 'uri'
|
|
3
2
|
|
|
4
3
|
class Morpheus::PoliciesInterface < Morpheus::APIClient
|
|
5
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
6
|
-
@access_token = access_token
|
|
7
|
-
@refresh_token = refresh_token
|
|
8
|
-
@base_url = base_url
|
|
9
|
-
@expires_at = expires_at
|
|
10
|
-
end
|
|
11
4
|
|
|
12
5
|
def get(id, params={})
|
|
13
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -54,7 +47,7 @@ class Morpheus::PoliciesInterface < Morpheus::APIClient
|
|
|
54
47
|
|
|
55
48
|
def get_policy_type(id, params={})
|
|
56
49
|
raise "#{self.class}.get_policy_type() passed a blank id!" if id.to_s == ''
|
|
57
|
-
url = "#{@base_url}/api/policy-types/#{
|
|
50
|
+
url = "#{@base_url}/api/policy-types/#{CGI::escape(id.to_s)}"
|
|
58
51
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
59
52
|
opts = {method: :get, url: url, headers: headers}
|
|
60
53
|
execute(opts)
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::PowerSchedulesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token, expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def get(id)
|
|
12
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -1,40 +1,37 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::PriceSetsInterface < Morpheus::APIClient
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@api_url = "#{@base_url}/api/price-sets"
|
|
9
|
-
@expires_at = expires_at
|
|
4
|
+
|
|
5
|
+
def base_path
|
|
6
|
+
"/api/price-sets"
|
|
10
7
|
end
|
|
11
8
|
|
|
12
9
|
def list(params={})
|
|
13
|
-
url =
|
|
10
|
+
url = base_path
|
|
14
11
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
15
12
|
execute(method: :get, url: url, headers: headers)
|
|
16
13
|
end
|
|
17
14
|
|
|
18
15
|
def get(id, params={})
|
|
19
|
-
url = "#{
|
|
16
|
+
url = "#{base_path}/#{id}"
|
|
20
17
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
21
18
|
execute(method: :get, url: url, headers: headers)
|
|
22
19
|
end
|
|
23
20
|
|
|
24
21
|
def create(payload)
|
|
25
|
-
url =
|
|
22
|
+
url = base_path
|
|
26
23
|
headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
27
24
|
execute(method: :post, url: url, headers: headers, payload: payload.to_json)
|
|
28
25
|
end
|
|
29
26
|
|
|
30
27
|
def update(id, payload)
|
|
31
|
-
url = "#{
|
|
28
|
+
url = "#{base_path}/#{id}"
|
|
32
29
|
headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
33
30
|
execute(method: :put, url: url, headers: headers, payload: payload.to_json)
|
|
34
31
|
end
|
|
35
32
|
|
|
36
33
|
def deactivate(id, params={})
|
|
37
|
-
url = "#{
|
|
34
|
+
url = "#{base_path}/#{id}/deactivate"
|
|
38
35
|
headers = { :params => params, :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
39
36
|
execute(method: :put, url: url, headers: headers)
|
|
40
37
|
end
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::PricesInterface < Morpheus::APIClient
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@api_url = "#{@base_url}/api/prices"
|
|
9
|
-
@expires_at = expires_at
|
|
4
|
+
|
|
5
|
+
def base_path
|
|
6
|
+
"/api/prices"
|
|
10
7
|
end
|
|
11
8
|
|
|
12
9
|
def list(params={})
|
|
13
|
-
url =
|
|
10
|
+
url = base_path
|
|
14
11
|
if params['ids']
|
|
15
12
|
url = "#{url}?#{params.delete('ids').collect {|id| "id=#{id}"}.join('&')}"
|
|
16
13
|
end
|
|
@@ -19,49 +16,49 @@ class Morpheus::PricesInterface < Morpheus::APIClient
|
|
|
19
16
|
end
|
|
20
17
|
|
|
21
18
|
def get(id, params={})
|
|
22
|
-
url = "#{
|
|
19
|
+
url = "#{base_path}/#{id}"
|
|
23
20
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
24
21
|
execute(method: :get, url: url, headers: headers)
|
|
25
22
|
end
|
|
26
23
|
|
|
27
24
|
def create(payload)
|
|
28
|
-
url =
|
|
25
|
+
url = base_path
|
|
29
26
|
headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
30
27
|
execute(method: :post, url: url, headers: headers, payload: payload.to_json)
|
|
31
28
|
end
|
|
32
29
|
|
|
33
30
|
def update(id, payload)
|
|
34
|
-
url = "#{
|
|
31
|
+
url = "#{base_path}/#{id}"
|
|
35
32
|
headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
36
33
|
execute(method: :put, url: url, headers: headers, payload: payload.to_json)
|
|
37
34
|
end
|
|
38
35
|
|
|
39
36
|
def deactivate(id, params={})
|
|
40
|
-
url = "#{
|
|
37
|
+
url = "#{base_path}/#{id}/deactivate"
|
|
41
38
|
headers = { :params => params, :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
42
39
|
execute(method: :put, url: url, headers: headers)
|
|
43
40
|
end
|
|
44
41
|
|
|
45
42
|
def list_datastores(params={})
|
|
46
|
-
url = "#{
|
|
43
|
+
url = "#{base_path}/datastores"
|
|
47
44
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
48
45
|
execute(method: :get, url: url, headers: headers)
|
|
49
46
|
end
|
|
50
47
|
|
|
51
48
|
def get_datastore(id, params={})
|
|
52
|
-
url = "#{
|
|
49
|
+
url = "#{base_path}/datastores/#{id}"
|
|
53
50
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
54
51
|
execute(method: :get, url: url, headers: headers)
|
|
55
52
|
end
|
|
56
53
|
|
|
57
54
|
def list_volume_types(params={})
|
|
58
|
-
url = "#{
|
|
55
|
+
url = "#{base_path}/volume-types"
|
|
59
56
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
60
57
|
execute(method: :get, url: url, headers: headers)
|
|
61
58
|
end
|
|
62
59
|
|
|
63
60
|
def get_volume_type(id, params={})
|
|
64
|
-
url = "#{
|
|
61
|
+
url = "#{base_path}/volume-types/#{id}"
|
|
65
62
|
headers = { params: params, authorization: "Bearer #{@access_token}" }
|
|
66
63
|
execute(method: :get, url: url, headers: headers)
|
|
67
64
|
end
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::ProcessesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def list(params={})
|
|
12
6
|
url = "#{@base_url}/api/processes"
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::ProvisionTypesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def list(params={})
|
|
12
6
|
url = "#{@base_url}/api/provision-types"
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::ProvisioningLicenseTypesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def get(id, params={})
|
|
12
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::ProvisioningLicensesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def get(id, params={})
|
|
12
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -1,28 +1,25 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::ProvisioningSettingsInterface < Morpheus::APIClient
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@api_url = "#{base_url}/api/#{api}"
|
|
9
|
-
@expires_at = expires_at
|
|
4
|
+
|
|
5
|
+
def base_path
|
|
6
|
+
"/api/provisioning-settings"
|
|
10
7
|
end
|
|
11
8
|
|
|
12
9
|
def get()
|
|
13
|
-
url =
|
|
10
|
+
url = base_path
|
|
14
11
|
headers = { params: {}, authorization: "Bearer #{@access_token}" }
|
|
15
12
|
execute(method: :get, url: url, headers: headers)
|
|
16
13
|
end
|
|
17
14
|
|
|
18
15
|
def update(payload)
|
|
19
|
-
url =
|
|
16
|
+
url = base_path
|
|
20
17
|
headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
21
18
|
execute(method: :put, url: url, headers: headers, payload: payload.to_json)
|
|
22
19
|
end
|
|
23
20
|
|
|
24
21
|
def template_types()
|
|
25
|
-
url = "#{
|
|
22
|
+
url = "#{base_path}/template-types"
|
|
26
23
|
headers = { params: {}, authorization: "Bearer #{@access_token}" }
|
|
27
24
|
execute(method: :get, url: url, headers: headers)
|
|
28
25
|
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
require 'morpheus/api/api_client'
|
|
2
|
+
|
|
3
|
+
# Interface class to be subclassed by interfaces that are read-only
|
|
4
|
+
# and only provide list() and get() methods, not full CRUD
|
|
5
|
+
# Subclasses must override the base_path method
|
|
6
|
+
class Morpheus::ReadInterface < Morpheus::APIClient
|
|
7
|
+
|
|
8
|
+
# subclasses should override in your interface
|
|
9
|
+
# Example: "/api/thing-types"
|
|
10
|
+
def base_path
|
|
11
|
+
raise "#{self.class} has not defined base_path!"
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def list(params={}, headers={})
|
|
15
|
+
execute(method: :get, url: "#{base_path}", params: params, headers: headers)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def get(id, params={}, headers={})
|
|
19
|
+
validate_id!(id)
|
|
20
|
+
execute(method: :get, url: "#{base_path}/#{id}", params: params, headers: headers)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
end
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::ReportsInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token,expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def get(id, params={})
|
|
12
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
|
+
# Interface class to be subclassed by interfaces that provide CRUD endpoints
|
|
4
|
+
# Subclasses must override the base_path method
|
|
3
5
|
class Morpheus::RestInterface < Morpheus::APIClient
|
|
4
6
|
|
|
5
7
|
# subclasses should override in your interface
|
|
@@ -8,27 +10,27 @@ class Morpheus::RestInterface < Morpheus::APIClient
|
|
|
8
10
|
raise "#{self.class} has not defined base_path!"
|
|
9
11
|
end
|
|
10
12
|
|
|
11
|
-
def list(params={})
|
|
12
|
-
execute(method: :get, url: "#{base_path}", params: params)
|
|
13
|
+
def list(params={}, headers={})
|
|
14
|
+
execute(method: :get, url: "#{base_path}", params: params, headers: headers)
|
|
13
15
|
end
|
|
14
16
|
|
|
15
|
-
def get(id, params={})
|
|
17
|
+
def get(id, params={}, headers={})
|
|
16
18
|
validate_id!(id)
|
|
17
|
-
execute(method: :get, url: "#{base_path}/#{id}", params: params)
|
|
19
|
+
execute(method: :get, url: "#{base_path}/#{id}", params: params, headers: headers)
|
|
18
20
|
end
|
|
19
21
|
|
|
20
|
-
def create(payload, params={})
|
|
21
|
-
execute(method: :post, url: "#{base_path}", params: params, payload: payload
|
|
22
|
+
def create(payload, params={}, headers={})
|
|
23
|
+
execute(method: :post, url: "#{base_path}", params: params, payload: payload, headers: headers)
|
|
22
24
|
end
|
|
23
25
|
|
|
24
|
-
def update(id, payload, params={})
|
|
26
|
+
def update(id, payload, params={}, headers={})
|
|
25
27
|
validate_id!(id)
|
|
26
|
-
execute(method: :put, url: "#{base_path}/#{id}", params: params, payload: payload
|
|
28
|
+
execute(method: :put, url: "#{base_path}/#{id}", params: params, payload: payload, headers: headers)
|
|
27
29
|
end
|
|
28
30
|
|
|
29
|
-
def destroy(id, params = {})
|
|
31
|
+
def destroy(id, params = {}, headers={})
|
|
30
32
|
validate_id!(id)
|
|
31
|
-
execute(method: :delete, url: "#{base_path}/#{id}", params: params)
|
|
33
|
+
execute(method: :delete, url: "#{base_path}/#{id}", params: params, headers: headers)
|
|
32
34
|
end
|
|
33
35
|
|
|
34
36
|
end
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
require 'morpheus/api/api_client'
|
|
2
2
|
|
|
3
3
|
class Morpheus::RolesInterface < Morpheus::APIClient
|
|
4
|
-
def initialize(access_token, refresh_token, expires_at = nil, base_url=nil)
|
|
5
|
-
@access_token = access_token
|
|
6
|
-
@refresh_token = refresh_token
|
|
7
|
-
@base_url = base_url
|
|
8
|
-
@expires_at = expires_at
|
|
9
|
-
end
|
|
10
4
|
|
|
11
5
|
def get(account_id, id)
|
|
12
6
|
raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
|
|
@@ -91,6 +85,13 @@ class Morpheus::RolesInterface < Morpheus::APIClient
|
|
|
91
85
|
execute(method: :put, url: url, headers: headers, payload: payload.to_json)
|
|
92
86
|
end
|
|
93
87
|
|
|
88
|
+
def update_vdi_pool(account_id, id, options)
|
|
89
|
+
url = build_url(account_id, id) + "/update-vdi-pool"
|
|
90
|
+
headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
|
|
91
|
+
payload = options
|
|
92
|
+
execute(method: :put, url: url, headers: headers, payload: payload.to_json)
|
|
93
|
+
end
|
|
94
|
+
|
|
94
95
|
private
|
|
95
96
|
|
|
96
97
|
def build_url(account_id=nil, role_id=nil)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
require 'morpheus/api/api_client'
|
|
2
|
+
|
|
3
|
+
# Interface class to be subclassed by interfaces that provide CRUD endpoints
|
|
4
|
+
# for objects underneath another resource
|
|
5
|
+
# Subclasses must override the base_path(resource_id) method
|
|
6
|
+
class Morpheus::SecondaryReadInterface < Morpheus::APIClient
|
|
7
|
+
|
|
8
|
+
# subclasses should override in your interface
|
|
9
|
+
# Example: "/api/things/#{resource_id}/widgets"
|
|
10
|
+
def base_path(resource_id)
|
|
11
|
+
raise "#{self.class} has not defined base_path(resource_id)!"
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def list(resource_id, params={}, headers={})
|
|
15
|
+
validate_id!(resource_id)
|
|
16
|
+
execute(method: :get, url: "#{base_path(resource_id)}", params: params, headers: headers)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def get(resource_id, id, params={}, headers={})
|
|
20
|
+
validate_id!(resource_id)
|
|
21
|
+
validate_id!(id)
|
|
22
|
+
execute(method: :get, url: "#{base_path(resource_id)}/#{id}", params: params, headers: headers)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
require 'morpheus/api/api_client'
|
|
2
|
+
|
|
3
|
+
# Interface class to be subclassed by interfaces that provide CRUD endpoints
|
|
4
|
+
# for objects underneath another resource
|
|
5
|
+
# Subclasses must override the base_path(resource_id) method
|
|
6
|
+
class Morpheus::SecondaryRestInterface < Morpheus::APIClient
|
|
7
|
+
|
|
8
|
+
# subclasses should override in your interface
|
|
9
|
+
# Example: "/api/things/#{resource_id}/widgets"
|
|
10
|
+
def base_path(resource_id)
|
|
11
|
+
raise "#{self.class} has not defined base_path(resource_id)!"
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def list(resource_id, params={}, headers={})
|
|
15
|
+
validate_id!(resource_id)
|
|
16
|
+
execute(method: :get, url: "#{base_path(resource_id)}", params: params, headers: headers)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def get(resource_id, id, params={}, headers={})
|
|
20
|
+
validate_id!(resource_id)
|
|
21
|
+
validate_id!(id)
|
|
22
|
+
execute(method: :get, url: "#{base_path(resource_id)}/#{id}", params: params, headers: headers)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def create(resource_id, payload, params={}, headers={})
|
|
26
|
+
validate_id!(resource_id)
|
|
27
|
+
execute(method: :post, url: "#{base_path(resource_id)}", params: params, payload: payload, headers: headers)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def update(resource_id, id, payload, params={}, headers={})
|
|
31
|
+
validate_id!(resource_id)
|
|
32
|
+
validate_id!(id)
|
|
33
|
+
execute(method: :put, url: "#{base_path(resource_id)}/#{id}", params: params, payload: payload, headers: headers)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def destroy(resource_id, id, params = {}, headers={})
|
|
37
|
+
validate_id!(resource_id)
|
|
38
|
+
validate_id!(id)
|
|
39
|
+
execute(method: :delete, url: "#{base_path(resource_id)}/#{id}", params: params, headers: headers)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
end
|