morpheus-cli 5.3.1 → 5.3.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (173) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +1 -1
  3. data/lib/morpheus/api/account_groups_interface.rb +0 -6
  4. data/lib/morpheus/api/accounts_interface.rb +4 -36
  5. data/lib/morpheus/api/api_client.rb +120 -106
  6. data/lib/morpheus/api/appliance_settings_interface.rb +6 -9
  7. data/lib/morpheus/api/approvals_interface.rb +5 -8
  8. data/lib/morpheus/api/apps_interface.rb +0 -7
  9. data/lib/morpheus/api/archive_buckets_interface.rb +9 -16
  10. data/lib/morpheus/api/archive_files_interface.rb +0 -6
  11. data/lib/morpheus/api/auth_interface.rb +4 -4
  12. data/lib/morpheus/api/backup_settings_interface.rb +5 -8
  13. data/lib/morpheus/api/blueprints_interface.rb +1 -7
  14. data/lib/morpheus/api/budgets_interface.rb +0 -6
  15. data/lib/morpheus/api/cloud_datastores_interface.rb +0 -6
  16. data/lib/morpheus/api/cloud_folders_interface.rb +1 -7
  17. data/lib/morpheus/api/cloud_policies_interface.rb +0 -6
  18. data/lib/morpheus/api/cloud_resource_pools_interface.rb +0 -6
  19. data/lib/morpheus/api/clouds_interface.rb +0 -6
  20. data/lib/morpheus/api/clusters_interface.rb +39 -42
  21. data/lib/morpheus/api/containers_interface.rb +0 -6
  22. data/lib/morpheus/api/custom_instance_types_interface.rb +0 -6
  23. data/lib/morpheus/api/cypher_interface.rb +0 -6
  24. data/lib/morpheus/api/datastores_interface.rb +4 -7
  25. data/lib/morpheus/api/deploy_interface.rb +1 -6
  26. data/lib/morpheus/api/environments_interface.rb +0 -6
  27. data/lib/morpheus/api/execute_schedules_interface.rb +0 -6
  28. data/lib/morpheus/api/execution_request_interface.rb +0 -6
  29. data/lib/morpheus/api/file_copy_request_interface.rb +2 -9
  30. data/lib/morpheus/api/group_policies_interface.rb +0 -6
  31. data/lib/morpheus/api/groups_interface.rb +0 -7
  32. data/lib/morpheus/api/guidance_interface.rb +9 -12
  33. data/lib/morpheus/api/health_interface.rb +0 -6
  34. data/lib/morpheus/api/image_builder_boot_scripts_interface.rb +0 -6
  35. data/lib/morpheus/api/image_builder_image_builds_interface.rb +0 -6
  36. data/lib/morpheus/api/image_builder_interface.rb +3 -9
  37. data/lib/morpheus/api/image_builder_preseed_scripts_interface.rb +0 -6
  38. data/lib/morpheus/api/instance_types_interface.rb +0 -7
  39. data/lib/morpheus/api/instances_interface.rb +8 -19
  40. data/lib/morpheus/api/integrations_interface.rb +30 -0
  41. data/lib/morpheus/api/invoice_line_items_interface.rb +4 -9
  42. data/lib/morpheus/api/jobs_interface.rb +11 -14
  43. data/lib/morpheus/api/key_pairs_interface.rb +0 -6
  44. data/lib/morpheus/api/library_cluster_layouts_interface.rb +0 -6
  45. data/lib/morpheus/api/library_container_scripts_interface.rb +0 -6
  46. data/lib/morpheus/api/library_container_templates_interface.rb +0 -6
  47. data/lib/morpheus/api/library_container_types_interface.rb +0 -6
  48. data/lib/morpheus/api/library_container_upgrades_interface.rb +0 -6
  49. data/lib/morpheus/api/library_instance_types_interface.rb +0 -6
  50. data/lib/morpheus/api/library_layouts_interface.rb +0 -6
  51. data/lib/morpheus/api/library_spec_template_types_interface.rb +0 -6
  52. data/lib/morpheus/api/library_spec_templates_interface.rb +0 -6
  53. data/lib/morpheus/api/license_interface.rb +0 -6
  54. data/lib/morpheus/api/load_balancer_pools_interface.rb +9 -0
  55. data/lib/morpheus/api/load_balancer_types_interface.rb +9 -0
  56. data/lib/morpheus/api/load_balancer_virtual_servers_interface.rb +9 -0
  57. data/lib/morpheus/api/load_balancers_interface.rb +4 -59
  58. data/lib/morpheus/api/log_settings_interface.rb +9 -12
  59. data/lib/morpheus/api/logs_interface.rb +0 -6
  60. data/lib/morpheus/api/monitoring_alerts_interface.rb +0 -6
  61. data/lib/morpheus/api/monitoring_apps_interface.rb +0 -6
  62. data/lib/morpheus/api/monitoring_checks_interface.rb +0 -6
  63. data/lib/morpheus/api/monitoring_contacts_interface.rb +0 -6
  64. data/lib/morpheus/api/monitoring_groups_interface.rb +0 -6
  65. data/lib/morpheus/api/monitoring_incidents_interface.rb +0 -6
  66. data/lib/morpheus/api/monitoring_interface.rb +6 -12
  67. data/lib/morpheus/api/network_domain_records_interface.rb +0 -6
  68. data/lib/morpheus/api/network_domains_interface.rb +0 -6
  69. data/lib/morpheus/api/network_groups_interface.rb +0 -6
  70. data/lib/morpheus/api/network_pool_ips_interface.rb +0 -6
  71. data/lib/morpheus/api/network_pool_servers_interface.rb +0 -6
  72. data/lib/morpheus/api/network_pools_interface.rb +0 -6
  73. data/lib/morpheus/api/network_proxies_interface.rb +0 -6
  74. data/lib/morpheus/api/network_routers_interface.rb +56 -6
  75. data/lib/morpheus/api/network_security_servers_interface.rb +6 -9
  76. data/lib/morpheus/api/network_services_interface.rb +0 -14
  77. data/lib/morpheus/api/network_subnets_interface.rb +0 -6
  78. data/lib/morpheus/api/network_types_interface.rb +1 -7
  79. data/lib/morpheus/api/networks_interface.rb +0 -6
  80. data/lib/morpheus/api/option_type_lists_interface.rb +18 -12
  81. data/lib/morpheus/api/option_types_interface.rb +0 -6
  82. data/lib/morpheus/api/options_interface.rb +0 -6
  83. data/lib/morpheus/api/packages_interface.rb +0 -6
  84. data/lib/morpheus/api/policies_interface.rb +1 -8
  85. data/lib/morpheus/api/power_schedules_interface.rb +0 -6
  86. data/lib/morpheus/api/price_sets_interface.rb +8 -11
  87. data/lib/morpheus/api/prices_interface.rb +12 -15
  88. data/lib/morpheus/api/processes_interface.rb +0 -6
  89. data/lib/morpheus/api/provision_types_interface.rb +0 -6
  90. data/lib/morpheus/api/provisioning_license_types_interface.rb +0 -6
  91. data/lib/morpheus/api/provisioning_licenses_interface.rb +0 -6
  92. data/lib/morpheus/api/provisioning_settings_interface.rb +6 -9
  93. data/lib/morpheus/api/reports_interface.rb +0 -6
  94. data/lib/morpheus/api/roles_interface.rb +0 -6
  95. data/lib/morpheus/api/secondary_read_interface.rb +25 -0
  96. data/lib/morpheus/api/secondary_rest_interface.rb +42 -0
  97. data/lib/morpheus/api/security_group_rules_interface.rb +0 -7
  98. data/lib/morpheus/api/security_groups_interface.rb +0 -6
  99. data/lib/morpheus/api/server_types_interface.rb +0 -6
  100. data/lib/morpheus/api/servers_interface.rb +0 -6
  101. data/lib/morpheus/api/service_plans_interface.rb +11 -14
  102. data/lib/morpheus/api/storage_providers_interface.rb +9 -16
  103. data/lib/morpheus/api/subnet_types_interface.rb +1 -7
  104. data/lib/morpheus/api/subnets_interface.rb +0 -6
  105. data/lib/morpheus/api/task_sets_interface.rb +0 -6
  106. data/lib/morpheus/api/tasks_interface.rb +0 -6
  107. data/lib/morpheus/api/user_groups_interface.rb +0 -6
  108. data/lib/morpheus/api/user_sources_interface.rb +0 -6
  109. data/lib/morpheus/api/users_interface.rb +0 -6
  110. data/lib/morpheus/api/virtual_images_interface.rb +0 -6
  111. data/lib/morpheus/api/whitelabel_settings_interface.rb +8 -11
  112. data/lib/morpheus/api/wiki_interface.rb +0 -6
  113. data/lib/morpheus/cli/access_token_command.rb +1 -1
  114. data/lib/morpheus/cli/account_groups_command.rb +4 -4
  115. data/lib/morpheus/cli/apps.rb +9 -9
  116. data/lib/morpheus/cli/archives_command.rb +5 -5
  117. data/lib/morpheus/cli/blueprints_command.rb +5 -5
  118. data/lib/morpheus/cli/boot_scripts_command.rb +1 -1
  119. data/lib/morpheus/cli/change_password_command.rb +4 -4
  120. data/lib/morpheus/cli/cli_command.rb +11 -10
  121. data/lib/morpheus/cli/clouds.rb +2 -2
  122. data/lib/morpheus/cli/clusters.rb +2 -2
  123. data/lib/morpheus/cli/credentials.rb +4 -11
  124. data/lib/morpheus/cli/environments_command.rb +1 -1
  125. data/lib/morpheus/cli/execute_schedules_command.rb +3 -3
  126. data/lib/morpheus/cli/hosts.rb +8 -8
  127. data/lib/morpheus/cli/image_builder_command.rb +6 -6
  128. data/lib/morpheus/cli/instance_types.rb +1 -1
  129. data/lib/morpheus/cli/instances.rb +93 -64
  130. data/lib/morpheus/cli/integrations_command.rb +567 -1
  131. data/lib/morpheus/cli/invoices_command.rb +75 -67
  132. data/lib/morpheus/cli/key_pairs.rb +2 -2
  133. data/lib/morpheus/cli/library_cluster_layouts_command.rb +2 -3
  134. data/lib/morpheus/cli/library_container_scripts_command.rb +4 -5
  135. data/lib/morpheus/cli/library_container_templates_command.rb +5 -1
  136. data/lib/morpheus/cli/library_container_types_command.rb +8 -9
  137. data/lib/morpheus/cli/library_instance_types_command.rb +6 -7
  138. data/lib/morpheus/cli/library_layouts_command.rb +9 -5
  139. data/lib/morpheus/cli/library_option_lists_command.rb +72 -20
  140. data/lib/morpheus/cli/library_option_types_command.rb +8 -4
  141. data/lib/morpheus/cli/library_spec_templates_command.rb +3 -4
  142. data/lib/morpheus/cli/library_upgrades_command.rb +6 -6
  143. data/lib/morpheus/cli/license.rb +2 -2
  144. data/lib/morpheus/cli/load_balancer_types.rb +37 -0
  145. data/lib/morpheus/cli/load_balancers.rb +149 -314
  146. data/lib/morpheus/cli/log_settings_command.rb +7 -3
  147. data/lib/morpheus/cli/login.rb +3 -1
  148. data/lib/morpheus/cli/mixins/load_balancers_helper.rb +156 -0
  149. data/lib/morpheus/cli/mixins/print_helper.rb +11 -0
  150. data/lib/morpheus/cli/mixins/provisioning_helper.rb +2 -2
  151. data/lib/morpheus/cli/mixins/rest_command.rb +657 -0
  152. data/lib/morpheus/cli/network_routers_command.rb +1183 -185
  153. data/lib/morpheus/cli/networks_command.rb +194 -101
  154. data/lib/morpheus/cli/option_types.rb +34 -40
  155. data/lib/morpheus/cli/policies_command.rb +0 -1
  156. data/lib/morpheus/cli/power_schedules_command.rb +3 -3
  157. data/lib/morpheus/cli/preseed_scripts_command.rb +1 -1
  158. data/lib/morpheus/cli/remote.rb +1 -1
  159. data/lib/morpheus/cli/roles.rb +9 -9
  160. data/lib/morpheus/cli/security_group_rules.rb +1 -1
  161. data/lib/morpheus/cli/setup.rb +0 -1
  162. data/lib/morpheus/cli/tenants_command.rb +21 -23
  163. data/lib/morpheus/cli/user_groups_command.rb +3 -3
  164. data/lib/morpheus/cli/user_sources_command.rb +3 -3
  165. data/lib/morpheus/cli/users.rb +3 -3
  166. data/lib/morpheus/cli/version.rb +1 -1
  167. data/lib/morpheus/cli/virtual_images.rb +1 -1
  168. data/lib/morpheus/cli/whoami.rb +0 -15
  169. data/lib/morpheus/cli/wiki_command.rb +1 -1
  170. data/lib/morpheus/cli.rb +1 -0
  171. data/lib/morpheus/ext/string.rb +41 -0
  172. data/lib/morpheus/formatters.rb +4 -0
  173. metadata +11 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5ef633b92f3026067d66ea71995c2d7d2655579b07a200f083dccead54b371bb
4
- data.tar.gz: 7fd5dedc5f5aa6a9c9a071f47639e9fa3f9a86a2a777e737d1a8581dfb195e86
3
+ metadata.gz: 727a18a73b2f9c5a7dbec90521cf690eccc5a36de5c90631b17ddc6e658befbf
4
+ data.tar.gz: 98faaa24be96fd839c85a9e3463881bb3f59ab10740244867a2290b880c83988
5
5
  SHA512:
6
- metadata.gz: 5e23c9f9a34bf2efa4f3d5c4299045fa800b04789abec9553daa134e4db271e274840b50627ac6131a1f4f38e14bda05e630dd4d47bb36dce0d001ef2bbed368
7
- data.tar.gz: 3f55908e5d7f440a041de2ad74c8e0019123b04ed32fecaa6e3dfb14ae41e9b86c7b7a298e060d0c2ffb74db82349b80be08ac4e0a750453bed4ca66dbd640a9
6
+ metadata.gz: 654136bc313f445739d1665861e67831f95d5cddd138a9cf619f824cd78d2ce665f1332a0a09c73039850146adb30347830e935536331ab8941bd203b56d01c2
7
+ data.tar.gz: b63702230910bffae83a7784ad3385c92df5ef7df13b3cfb83d3cb59bb42e593f1a6dc6a2b65628aea928ced34772a8b7f45c7d6a33d2ae93eda22640e3695a3
data/Dockerfile CHANGED
@@ -1,5 +1,5 @@
1
1
  FROM ruby:2.5.1
2
2
 
3
- RUN gem install morpheus-cli -v 5.3.1
3
+ RUN gem install morpheus-cli -v 5.3.2.2
4
4
 
5
5
  ENTRYPOINT ["morpheus"]
@@ -1,12 +1,6 @@
1
1
  require 'morpheus/api/api_client'
2
2
 
3
3
  class Morpheus::AccountGroupsInterface < 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, params={})
12
6
  raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
@@ -1,41 +1,9 @@
1
- require 'morpheus/api/api_client'
1
+ require 'morpheus/api/rest_interface'
2
2
 
3
- class Morpheus::AccountsInterface < 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
-
11
- def get(id)
12
- raise "#{self.class}.get() passed a blank id!" if id.to_s == ''
13
- url = "#{@base_url}/api/accounts/#{id}"
14
- headers = { params: {}, authorization: "Bearer #{@access_token}" }
15
- execute(method: :get, url: url, headers: headers)
16
- end
17
-
18
- def list(params={})
19
- url = "#{@base_url}/api/accounts"
20
- headers = { params: params, authorization: "Bearer #{@access_token}" }
21
- execute(method: :get, url: url, headers: headers)
22
- end
23
-
24
- def create(payload)
25
- url = "#{@base_url}/api/accounts"
26
- headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
27
- execute(method: :post, url: url, headers: headers, payload: payload.to_json)
28
- end
3
+ class Morpheus::AccountsInterface < Morpheus::RestInterface
29
4
 
30
- def update(id, payload)
31
- url = "#{@base_url}/api/accounts/#{id}"
32
- headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
33
- execute(method: :put, url: url, headers: headers, payload: payload.to_json)
5
+ def base_path
6
+ "/api/accounts"
34
7
  end
35
8
 
36
- def destroy(id)
37
- url = "#{@base_url}/api/accounts/#{id}"
38
- headers = { :authorization => "Bearer #{@access_token}", 'Content-Type' => 'application/json' }
39
- execute(method: :delete, url: url, headers: headers)
40
- end
41
9
  end
@@ -1,5 +1,6 @@
1
1
  require 'json'
2
2
  require 'uri'
3
+ require 'cgi'
3
4
  require 'rest-client'
4
5
 
5
6
  class Morpheus::APIClient
@@ -80,7 +81,7 @@ class Morpheus::APIClient
80
81
  end
81
82
 
82
83
  # set default seconds for interface to timeout after
83
- # or let it use system default? none, it should not timeout by default..
84
+ # or let it use system default? none, it should not timeout by default..
84
85
  # I think execute() may use 30 seconds for get by default.
85
86
  # and it should remove timeout when method is post, put, or delete
86
87
  def default_timeout
@@ -104,7 +105,7 @@ class Morpheus::APIClient
104
105
  # set common global @options for use with all requests
105
106
  # meant for inline use just like dry(), set_options(dry_run:true) can be used in place of dry()
106
107
  # @param opts [Hash] globally supported options like :dry_run, :json, :curl, :headers, :timeout, etc
107
- # Example:
108
+ # Example:
108
109
  # Prints curl -XGET .../whoami -H "Bearer" instead of actually request
109
110
  # APIClient.new(token).whoami.setopts(curl:true).get({})
110
111
  # @return self (APIClient)
@@ -169,7 +170,7 @@ class Morpheus::APIClient
169
170
  # convert to lowercase Symbol like :get, :post, :put, or :delete
170
171
  opts[:method] = opts[:method].to_s.downcase.to_sym
171
172
  end
172
-
173
+
173
174
  # could validate method here...
174
175
 
175
176
  # apply default headers
@@ -260,7 +261,7 @@ class Morpheus::APIClient
260
261
  # end
261
262
 
262
263
  # Morpheus::Logging::DarkPrinter.puts "Morpheus::RestClient.execute(#{opts})" if Morpheus::Logging.debug?
263
- # instead, using ::RestClient.log = STDOUT
264
+ # instead, using ::RestClient.log = STDOUT
264
265
  response = Morpheus::RestClient.execute(opts)
265
266
  if opts[:parse_json] != false && options[:parse_json] != false
266
267
  return JSON.parse(response.to_s)
@@ -323,11 +324,12 @@ class Morpheus::APIClient
323
324
 
324
325
  def common_interface_options
325
326
  {
326
- url: @base_url,
327
- access_token: @access_token,
328
- refresh_token: @refresh_token,
329
- expires_at: @expires_at,
330
- client_id: @client_id
327
+ url: @base_url,
328
+ access_token: @access_token,
329
+ refresh_token: @refresh_token,
330
+ expires_at: @expires_at,
331
+ client_id: @client_id,
332
+ verify_ssl: @verify_ssl
331
333
  }
332
334
  end
333
335
 
@@ -342,10 +344,10 @@ class Morpheus::APIClient
342
344
  def setup
343
345
  Morpheus::SetupInterface.new(common_interface_options).setopts(@options)
344
346
  end
345
-
347
+
346
348
  def auth
347
349
  # Morpheus::AuthInterface.new(common_interface_options).setopts(@options)
348
- Morpheus::AuthInterface.new({url: @base_url, client_id: @client_id}).setopts(@options)
350
+ Morpheus::AuthInterface.new({url: @base_url, client_id: @client_id, verify_ssl: @verify_ssl}).setopts(@options)
349
351
  end
350
352
 
351
353
  def forgot
@@ -373,67 +375,67 @@ class Morpheus::APIClient
373
375
  end
374
376
 
375
377
  def options
376
- Morpheus::OptionsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
378
+ Morpheus::OptionsInterface.new(common_interface_options).setopts(@options)
377
379
  end
378
380
 
379
381
  def groups
380
- Morpheus::GroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
382
+ Morpheus::GroupsInterface.new(common_interface_options).setopts(@options)
381
383
  end
382
384
 
383
385
  def account_groups
384
- Morpheus::AccountGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
386
+ Morpheus::AccountGroupsInterface.new(common_interface_options).setopts(@options)
385
387
  end
386
388
 
387
389
  def clouds
388
- Morpheus::CloudsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
390
+ Morpheus::CloudsInterface.new(common_interface_options).setopts(@options)
389
391
  end
390
392
 
391
393
  def cloud_datastores
392
- Morpheus::CloudDatastoresInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
394
+ Morpheus::CloudDatastoresInterface.new(common_interface_options).setopts(@options)
393
395
  end
394
396
 
395
397
  def cloud_resource_pools
396
- Morpheus::CloudResourcePoolsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
398
+ Morpheus::CloudResourcePoolsInterface.new(common_interface_options).setopts(@options)
397
399
  end
398
400
 
399
401
  def cloud_folders
400
- Morpheus::CloudFoldersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
402
+ Morpheus::CloudFoldersInterface.new(common_interface_options).setopts(@options)
401
403
  end
402
404
 
403
405
  def datastores
404
- Morpheus::DatastoresInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
406
+ Morpheus::DatastoresInterface.new(common_interface_options).setopts(@options)
405
407
  end
406
408
 
407
409
  def servers
408
- Morpheus::ServersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
410
+ Morpheus::ServersInterface.new(common_interface_options).setopts(@options)
409
411
  end
410
412
 
411
413
  def instances
412
- Morpheus::InstancesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
414
+ Morpheus::InstancesInterface.new(common_interface_options).setopts(@options)
413
415
  end
414
416
 
415
417
  def appliance_settings
416
- Morpheus::ApplianceSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
418
+ Morpheus::ApplianceSettingsInterface.new(common_interface_options).setopts(@options)
417
419
  end
418
420
 
419
421
  def provisioning_settings
420
- Morpheus::ProvisioningSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
422
+ Morpheus::ProvisioningSettingsInterface.new(common_interface_options).setopts(@options)
421
423
  end
422
424
 
423
425
  def provisioning_licenses
424
- Morpheus::ProvisioningLicensesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
426
+ Morpheus::ProvisioningLicensesInterface.new(common_interface_options).setopts(@options)
425
427
  end
426
428
 
427
429
  def provisioning_license_types
428
- Morpheus::ProvisioningLicenseTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
430
+ Morpheus::ProvisioningLicenseTypesInterface.new(common_interface_options).setopts(@options)
429
431
  end
430
432
 
431
433
  def containers
432
- Morpheus::ContainersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
434
+ Morpheus::ContainersInterface.new(common_interface_options).setopts(@options)
433
435
  end
434
436
 
435
437
  def instance_types
436
- Morpheus::InstanceTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
438
+ Morpheus::InstanceTypesInterface.new(common_interface_options).setopts(@options)
437
439
  end
438
440
 
439
441
  def integrations
@@ -445,103 +447,115 @@ class Morpheus::APIClient
445
447
  end
446
448
 
447
449
  def jobs
448
- Morpheus::JobsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
450
+ Morpheus::JobsInterface.new(common_interface_options).setopts(@options)
449
451
  end
450
452
 
451
453
  def server_types
452
- Morpheus::ServerTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
454
+ Morpheus::ServerTypesInterface.new(common_interface_options).setopts(@options)
453
455
  end
454
456
 
455
457
  def provision_types
456
- Morpheus::ProvisionTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
458
+ Morpheus::ProvisionTypesInterface.new(common_interface_options).setopts(@options)
457
459
  end
458
460
 
459
461
  def service_plans
460
- Morpheus::ServicePlansInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
462
+ Morpheus::ServicePlansInterface.new(common_interface_options).setopts(@options)
461
463
  end
462
464
 
463
465
  def price_sets
464
- Morpheus::PriceSetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
466
+ Morpheus::PriceSetsInterface.new(common_interface_options).setopts(@options)
465
467
  end
466
468
 
467
469
  def prices
468
- Morpheus::PricesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
470
+ Morpheus::PricesInterface.new(common_interface_options).setopts(@options)
469
471
  end
470
472
 
471
473
  def load_balancers
472
- Morpheus::LoadBalancersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
474
+ Morpheus::LoadBalancersInterface.new(common_interface_options).setopts(@options)
475
+ end
476
+
477
+ def load_balancer_types
478
+ Morpheus::LoadBalancerTypesInterface.new(common_interface_options).setopts(@options)
479
+ end
480
+
481
+ def load_balancer_virtual_servers
482
+ Morpheus::LoadBalancerVirtualServersInterface.new(common_interface_options).setopts(@options)
483
+ end
484
+
485
+ def load_balancer_pools
486
+ Morpheus::LoadBalancerPoolsInterface.new(common_interface_options).setopts(@options)
473
487
  end
474
488
 
475
489
  def tasks
476
- Morpheus::TasksInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
490
+ Morpheus::TasksInterface.new(common_interface_options).setopts(@options)
477
491
  end
478
492
 
479
493
  def task_sets
480
- Morpheus::TaskSetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
494
+ Morpheus::TaskSetsInterface.new(common_interface_options).setopts(@options)
481
495
  end
482
496
 
483
497
  def virtual_images
484
- Morpheus::VirtualImagesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
498
+ Morpheus::VirtualImagesInterface.new(common_interface_options).setopts(@options)
485
499
  end
486
500
 
487
501
  def apps
488
- Morpheus::AppsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
502
+ Morpheus::AppsInterface.new(common_interface_options).setopts(@options)
489
503
  end
490
504
 
491
505
  def blueprints
492
- Morpheus::BlueprintsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
506
+ Morpheus::BlueprintsInterface.new(common_interface_options).setopts(@options)
493
507
  end
494
508
 
495
509
  def deploy
496
- Morpheus::DeployInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
510
+ Morpheus::DeployInterface.new(common_interface_options).setopts(@options)
497
511
  end
498
512
 
499
513
  def deployments
500
- Morpheus::DeploymentsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
514
+ Morpheus::DeploymentsInterface.new(common_interface_options).setopts(@options)
501
515
  end
502
516
 
503
517
  def security_groups
504
- Morpheus::SecurityGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
518
+ Morpheus::SecurityGroupsInterface.new(common_interface_options).setopts(@options)
505
519
  end
506
520
 
507
521
  def security_group_rules
508
- Morpheus::SecurityGroupRulesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
522
+ Morpheus::SecurityGroupRulesInterface.new(common_interface_options).setopts(@options)
509
523
  end
510
524
 
511
525
  def clusters
512
- Morpheus::ClustersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
526
+ Morpheus::ClustersInterface.new(common_interface_options).setopts(@options)
513
527
  end
514
528
 
515
529
  def accounts
516
- Morpheus::AccountsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
530
+ Morpheus::AccountsInterface.new(common_interface_options).setopts(@options)
517
531
  end
518
532
 
519
533
  def approvals
520
- Morpheus::ApprovalsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
534
+ Morpheus::ApprovalsInterface.new(common_interface_options).setopts(@options)
521
535
  end
522
536
 
523
537
  def users
524
- Morpheus::UsersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
538
+ Morpheus::UsersInterface.new(common_interface_options).setopts(@options)
525
539
  end
526
540
 
527
541
  def user_groups
528
- Morpheus::UserGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
542
+ Morpheus::UserGroupsInterface.new(common_interface_options).setopts(@options)
529
543
  end
530
544
 
531
545
  def user_sources
532
- Morpheus::UserSourcesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
546
+ Morpheus::UserSourcesInterface.new(common_interface_options).setopts(@options)
533
547
  end
534
548
 
535
549
  def logs
536
- Morpheus::LogsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
550
+ Morpheus::LogsInterface.new(common_interface_options).setopts(@options)
537
551
  end
538
552
 
539
553
  def roles
540
- Morpheus::RolesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
554
+ Morpheus::RolesInterface.new(common_interface_options).setopts(@options)
541
555
  end
542
556
 
543
557
  def key_pairs
544
- Morpheus::KeyPairsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
558
+ Morpheus::KeyPairsInterface.new(common_interface_options).setopts(@options)
545
559
  end
546
560
 
547
561
  def certificates
@@ -553,213 +567,213 @@ class Morpheus::APIClient
553
567
  end
554
568
 
555
569
  def license
556
- Morpheus::LicenseInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
570
+ Morpheus::LicenseInterface.new(common_interface_options).setopts(@options)
557
571
  end
558
572
 
559
573
  def option_types
560
- Morpheus::OptionTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
574
+ Morpheus::OptionTypesInterface.new(common_interface_options).setopts(@options)
561
575
  end
562
576
 
563
577
  def option_type_lists
564
- Morpheus::OptionTypeListsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
578
+ Morpheus::OptionTypeListsInterface.new(common_interface_options).setopts(@options)
565
579
  end
566
580
 
567
581
  def power_schedules
568
- Morpheus::PowerSchedulesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
582
+ Morpheus::PowerSchedulesInterface.new(common_interface_options).setopts(@options)
569
583
  end
570
584
 
571
585
  def execute_schedules
572
- Morpheus::ExecuteSchedulesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
586
+ Morpheus::ExecuteSchedulesInterface.new(common_interface_options).setopts(@options)
573
587
  end
574
588
 
575
589
  def monitoring
576
- Morpheus::MonitoringInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
590
+ Morpheus::MonitoringInterface.new(common_interface_options).setopts(@options)
577
591
  end
578
592
 
579
593
  # def checks
580
- # # Morpheus::MonitoringChecksInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
594
+ # # Morpheus::MonitoringChecksInterface.new(common_interface_options).setopts(@options)
581
595
  # monitoring.checks
582
596
  # end
583
597
 
584
598
  # def incidents
585
- # # Morpheus::MonitoringIncidentsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
599
+ # # Morpheus::MonitoringIncidentsInterface.new(common_interface_options).setopts(@options)
586
600
  # monitoring.incidents
587
601
  # end
588
602
 
589
603
  def policies
590
- Morpheus::PoliciesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
604
+ Morpheus::PoliciesInterface.new(common_interface_options).setopts(@options)
591
605
  end
592
606
 
593
607
  def group_policies
594
- Morpheus::GroupPoliciesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
608
+ Morpheus::GroupPoliciesInterface.new(common_interface_options).setopts(@options)
595
609
  end
596
610
 
597
611
  def cloud_policies
598
- Morpheus::CloudPoliciesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
612
+ Morpheus::CloudPoliciesInterface.new(common_interface_options).setopts(@options)
599
613
  end
600
614
 
601
615
  def networks
602
- Morpheus::NetworksInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
616
+ Morpheus::NetworksInterface.new(common_interface_options).setopts(@options)
603
617
  end
604
618
 
605
619
  def network_types
606
- Morpheus::NetworkTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
620
+ Morpheus::NetworkTypesInterface.new(common_interface_options).setopts(@options)
607
621
  end
608
622
 
609
623
  def subnets
610
- Morpheus::SubnetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
624
+ Morpheus::SubnetsInterface.new(common_interface_options).setopts(@options)
611
625
  end
612
626
 
613
627
  def subnet_types
614
- Morpheus::SubnetTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
628
+ Morpheus::SubnetTypesInterface.new(common_interface_options).setopts(@options)
615
629
  end
616
630
 
617
631
  def network_groups
618
- Morpheus::NetworkGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
632
+ Morpheus::NetworkGroupsInterface.new(common_interface_options).setopts(@options)
619
633
  end
620
634
 
621
635
  def network_pools
622
- Morpheus::NetworkPoolsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
636
+ Morpheus::NetworkPoolsInterface.new(common_interface_options).setopts(@options)
623
637
  end
624
638
 
625
639
  def network_pool_ips
626
- Morpheus::NetworkPoolIpsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
640
+ Morpheus::NetworkPoolIpsInterface.new(common_interface_options).setopts(@options)
627
641
  end
628
642
 
629
643
  def network_routers
630
- Morpheus::NetworkRoutersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
644
+ Morpheus::NetworkRoutersInterface.new(common_interface_options).setopts(@options)
631
645
  end
632
646
 
633
647
  def network_services
634
- Morpheus::NetworkServicesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
648
+ Morpheus::NetworkServicesInterface.new(common_interface_options).setopts(@options)
635
649
  end
636
650
 
637
651
  def network_security_servers
638
- Morpheus::NetworkSecurityServersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
652
+ Morpheus::NetworkSecurityServersInterface.new(common_interface_options).setopts(@options)
639
653
  end
640
654
 
641
655
  def network_pool_servers
642
- Morpheus::NetworkPoolServersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
656
+ Morpheus::NetworkPoolServersInterface.new(common_interface_options).setopts(@options)
643
657
  end
644
658
 
645
659
  def network_domains
646
- Morpheus::NetworkDomainsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
660
+ Morpheus::NetworkDomainsInterface.new(common_interface_options).setopts(@options)
647
661
  end
648
662
 
649
663
  def network_domain_records
650
- Morpheus::NetworkDomainRecordsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
664
+ Morpheus::NetworkDomainRecordsInterface.new(common_interface_options).setopts(@options)
651
665
  end
652
666
 
653
667
  def network_proxies
654
- Morpheus::NetworkProxiesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
668
+ Morpheus::NetworkProxiesInterface.new(common_interface_options).setopts(@options)
655
669
  end
656
670
 
657
671
  def archive_buckets
658
- Morpheus::ArchiveBucketsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
672
+ Morpheus::ArchiveBucketsInterface.new(common_interface_options).setopts(@options)
659
673
  end
660
674
 
661
675
  def archive_files
662
- Morpheus::ArchiveFilesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
676
+ Morpheus::ArchiveFilesInterface.new(common_interface_options).setopts(@options)
663
677
  end
664
678
 
665
679
  def image_builder
666
- Morpheus::ImageBuilderInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
680
+ Morpheus::ImageBuilderInterface.new(common_interface_options).setopts(@options)
667
681
  end
668
682
 
669
683
  def storage_providers
670
- Morpheus::StorageProvidersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
684
+ Morpheus::StorageProvidersInterface.new(common_interface_options).setopts(@options)
671
685
  end
672
686
 
673
687
  def library_instance_types
674
- Morpheus::LibraryInstanceTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
688
+ Morpheus::LibraryInstanceTypesInterface.new(common_interface_options).setopts(@options)
675
689
  end
676
690
 
677
691
  def library_layouts
678
- Morpheus::LibraryLayoutsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
692
+ Morpheus::LibraryLayoutsInterface.new(common_interface_options).setopts(@options)
679
693
  end
680
694
 
681
695
  def library_container_upgrades
682
- Morpheus::LibraryContainerUpgradesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
696
+ Morpheus::LibraryContainerUpgradesInterface.new(common_interface_options).setopts(@options)
683
697
  end
684
698
 
685
699
  def library_container_types
686
- Morpheus::LibraryContainerTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
700
+ Morpheus::LibraryContainerTypesInterface.new(common_interface_options).setopts(@options)
687
701
  end
688
702
 
689
703
  def library_container_scripts
690
- Morpheus::LibraryContainerScriptsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
704
+ Morpheus::LibraryContainerScriptsInterface.new(common_interface_options).setopts(@options)
691
705
  end
692
706
 
693
707
  def library_container_templates
694
- Morpheus::LibraryContainerTemplatesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
708
+ Morpheus::LibraryContainerTemplatesInterface.new(common_interface_options).setopts(@options)
695
709
  end
696
710
 
697
711
  def library_cluster_layouts
698
- Morpheus::LibraryClusterLayoutsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
712
+ Morpheus::LibraryClusterLayoutsInterface.new(common_interface_options).setopts(@options)
699
713
  end
700
714
 
701
715
  def library_spec_templates
702
- Morpheus::LibrarySpecTemplatesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
716
+ Morpheus::LibrarySpecTemplatesInterface.new(common_interface_options).setopts(@options)
703
717
  end
704
718
 
705
719
  def library_spec_template_types
706
- Morpheus::LibrarySpecTemplateTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
720
+ Morpheus::LibrarySpecTemplateTypesInterface.new(common_interface_options).setopts(@options)
707
721
  end
708
722
 
709
723
  def packages
710
- Morpheus::PackagesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
724
+ Morpheus::PackagesInterface.new(common_interface_options).setopts(@options)
711
725
  end
712
726
 
713
727
  def cypher
714
- Morpheus::CypherInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
728
+ Morpheus::CypherInterface.new(common_interface_options).setopts(@options)
715
729
  end
716
730
 
717
731
  def old_cypher
718
- Morpheus::OldCypherInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
732
+ Morpheus::OldCypherInterface.new(common_interface_options).setopts(@options)
719
733
  end
720
734
 
721
735
  def execution_request
722
- Morpheus::ExecutionRequestInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
736
+ Morpheus::ExecutionRequestInterface.new(common_interface_options).setopts(@options)
723
737
  end
724
738
 
725
739
  def file_copy_request
726
- Morpheus::FileCopyRequestInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
740
+ Morpheus::FileCopyRequestInterface.new(common_interface_options).setopts(@options)
727
741
  end
728
742
 
729
743
  def processes
730
- Morpheus::ProcessesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
744
+ Morpheus::ProcessesInterface.new(common_interface_options).setopts(@options)
731
745
  end
732
746
 
733
747
  def reports
734
- Morpheus::ReportsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
748
+ Morpheus::ReportsInterface.new(common_interface_options).setopts(@options)
735
749
  end
736
750
 
737
751
  def environments
738
- Morpheus::EnvironmentsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
752
+ Morpheus::EnvironmentsInterface.new(common_interface_options).setopts(@options)
739
753
  end
740
754
 
741
755
  def backup_settings
742
- Morpheus::BackupSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
756
+ Morpheus::BackupSettingsInterface.new(common_interface_options).setopts(@options)
743
757
  end
744
758
 
745
759
  def log_settings
746
- Morpheus::LogSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
760
+ Morpheus::LogSettingsInterface.new(common_interface_options).setopts(@options)
747
761
  end
748
762
 
749
763
  def whitelabel_settings
750
- Morpheus::WhitelabelSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
764
+ Morpheus::WhitelabelSettingsInterface.new(common_interface_options).setopts(@options)
751
765
  end
752
766
 
753
767
  def wiki
754
- Morpheus::WikiInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
768
+ Morpheus::WikiInterface.new(common_interface_options).setopts(@options)
755
769
  end
756
770
 
757
771
  def budgets
758
- Morpheus::BudgetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
772
+ Morpheus::BudgetsInterface.new(common_interface_options).setopts(@options)
759
773
  end
760
774
 
761
775
  def health
762
- Morpheus::HealthInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
776
+ Morpheus::HealthInterface.new(common_interface_options).setopts(@options)
763
777
  end
764
778
 
765
779
  def invoices
@@ -771,7 +785,7 @@ class Morpheus::APIClient
771
785
  end
772
786
 
773
787
  def guidance
774
- Morpheus::GuidanceInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
788
+ Morpheus::GuidanceInterface.new(common_interface_options).setopts(@options)
775
789
  end
776
790
 
777
791
  def projects
@@ -821,7 +835,7 @@ class Morpheus::APIClient
821
835
  def vdi_gateways
822
836
  Morpheus::VdiGatewaysInterface.new(common_interface_options).setopts(@options)
823
837
  end
824
-
838
+
825
839
  # add new interfaces here
826
840
 
827
841
  protected