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.
Files changed (199) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile +1 -1
  3. data/README.md +1 -3
  4. data/lib/morpheus/api/account_groups_interface.rb +0 -6
  5. data/lib/morpheus/api/accounts_interface.rb +4 -36
  6. data/lib/morpheus/api/api_client.rb +167 -119
  7. data/lib/morpheus/api/appliance_settings_interface.rb +6 -9
  8. data/lib/morpheus/api/approvals_interface.rb +5 -8
  9. data/lib/morpheus/api/apps_interface.rb +0 -7
  10. data/lib/morpheus/api/archive_buckets_interface.rb +9 -16
  11. data/lib/morpheus/api/archive_files_interface.rb +0 -6
  12. data/lib/morpheus/api/auth_interface.rb +4 -4
  13. data/lib/morpheus/api/backup_settings_interface.rb +5 -8
  14. data/lib/morpheus/api/blueprints_interface.rb +1 -7
  15. data/lib/morpheus/api/budgets_interface.rb +0 -6
  16. data/lib/morpheus/api/certificate_types_interface.rb +14 -0
  17. data/lib/morpheus/api/certificates_interface.rb +9 -0
  18. data/lib/morpheus/api/cloud_datastores_interface.rb +0 -6
  19. data/lib/morpheus/api/cloud_folders_interface.rb +1 -7
  20. data/lib/morpheus/api/cloud_policies_interface.rb +0 -6
  21. data/lib/morpheus/api/cloud_resource_pools_interface.rb +0 -6
  22. data/lib/morpheus/api/clouds_interface.rb +0 -6
  23. data/lib/morpheus/api/clusters_interface.rb +39 -42
  24. data/lib/morpheus/api/containers_interface.rb +0 -6
  25. data/lib/morpheus/api/custom_instance_types_interface.rb +0 -6
  26. data/lib/morpheus/api/cypher_interface.rb +0 -6
  27. data/lib/morpheus/api/datastores_interface.rb +4 -7
  28. data/lib/morpheus/api/deploy_interface.rb +1 -6
  29. data/lib/morpheus/api/environments_interface.rb +0 -6
  30. data/lib/morpheus/api/execute_schedules_interface.rb +0 -6
  31. data/lib/morpheus/api/execution_request_interface.rb +0 -6
  32. data/lib/morpheus/api/file_copy_request_interface.rb +2 -9
  33. data/lib/morpheus/api/group_policies_interface.rb +0 -6
  34. data/lib/morpheus/api/groups_interface.rb +0 -7
  35. data/lib/morpheus/api/guidance_interface.rb +9 -12
  36. data/lib/morpheus/api/health_interface.rb +0 -6
  37. data/lib/morpheus/api/image_builder_boot_scripts_interface.rb +0 -6
  38. data/lib/morpheus/api/image_builder_image_builds_interface.rb +0 -6
  39. data/lib/morpheus/api/image_builder_interface.rb +3 -9
  40. data/lib/morpheus/api/image_builder_preseed_scripts_interface.rb +0 -6
  41. data/lib/morpheus/api/instance_types_interface.rb +0 -7
  42. data/lib/morpheus/api/instances_interface.rb +8 -19
  43. data/lib/morpheus/api/integration_types_interface.rb +14 -0
  44. data/lib/morpheus/api/integrations_interface.rb +36 -21
  45. data/lib/morpheus/api/invoice_line_items_interface.rb +4 -9
  46. data/lib/morpheus/api/jobs_interface.rb +11 -14
  47. data/lib/morpheus/api/key_pairs_interface.rb +0 -6
  48. data/lib/morpheus/api/library_cluster_layouts_interface.rb +0 -6
  49. data/lib/morpheus/api/library_container_scripts_interface.rb +0 -6
  50. data/lib/morpheus/api/library_container_templates_interface.rb +0 -6
  51. data/lib/morpheus/api/library_container_types_interface.rb +0 -6
  52. data/lib/morpheus/api/library_container_upgrades_interface.rb +0 -6
  53. data/lib/morpheus/api/library_instance_types_interface.rb +0 -6
  54. data/lib/morpheus/api/library_layouts_interface.rb +0 -6
  55. data/lib/morpheus/api/library_spec_template_types_interface.rb +0 -6
  56. data/lib/morpheus/api/library_spec_templates_interface.rb +0 -6
  57. data/lib/morpheus/api/license_interface.rb +0 -6
  58. data/lib/morpheus/api/load_balancer_pools_interface.rb +9 -0
  59. data/lib/morpheus/api/load_balancer_types_interface.rb +9 -0
  60. data/lib/morpheus/api/load_balancer_virtual_servers_interface.rb +9 -0
  61. data/lib/morpheus/api/load_balancers_interface.rb +4 -59
  62. data/lib/morpheus/api/log_settings_interface.rb +9 -12
  63. data/lib/morpheus/api/logs_interface.rb +0 -6
  64. data/lib/morpheus/api/monitoring_alerts_interface.rb +0 -6
  65. data/lib/morpheus/api/monitoring_apps_interface.rb +0 -6
  66. data/lib/morpheus/api/monitoring_checks_interface.rb +0 -6
  67. data/lib/morpheus/api/monitoring_contacts_interface.rb +0 -6
  68. data/lib/morpheus/api/monitoring_groups_interface.rb +0 -6
  69. data/lib/morpheus/api/monitoring_incidents_interface.rb +0 -6
  70. data/lib/morpheus/api/monitoring_interface.rb +6 -12
  71. data/lib/morpheus/api/network_domain_records_interface.rb +0 -6
  72. data/lib/morpheus/api/network_domains_interface.rb +0 -6
  73. data/lib/morpheus/api/network_groups_interface.rb +0 -6
  74. data/lib/morpheus/api/network_pool_ips_interface.rb +0 -6
  75. data/lib/morpheus/api/network_pool_servers_interface.rb +0 -6
  76. data/lib/morpheus/api/network_pools_interface.rb +0 -6
  77. data/lib/morpheus/api/network_proxies_interface.rb +0 -6
  78. data/lib/morpheus/api/network_routers_interface.rb +56 -6
  79. data/lib/morpheus/api/network_security_servers_interface.rb +6 -9
  80. data/lib/morpheus/api/network_services_interface.rb +14 -14
  81. data/lib/morpheus/api/network_subnets_interface.rb +0 -6
  82. data/lib/morpheus/api/network_types_interface.rb +1 -7
  83. data/lib/morpheus/api/networks_interface.rb +0 -6
  84. data/lib/morpheus/api/option_type_lists_interface.rb +18 -12
  85. data/lib/morpheus/api/option_types_interface.rb +0 -6
  86. data/lib/morpheus/api/options_interface.rb +0 -6
  87. data/lib/morpheus/api/packages_interface.rb +0 -6
  88. data/lib/morpheus/api/policies_interface.rb +1 -8
  89. data/lib/morpheus/api/power_schedules_interface.rb +0 -6
  90. data/lib/morpheus/api/price_sets_interface.rb +8 -11
  91. data/lib/morpheus/api/prices_interface.rb +12 -15
  92. data/lib/morpheus/api/processes_interface.rb +0 -6
  93. data/lib/morpheus/api/provision_types_interface.rb +0 -6
  94. data/lib/morpheus/api/provisioning_license_types_interface.rb +0 -6
  95. data/lib/morpheus/api/provisioning_licenses_interface.rb +0 -6
  96. data/lib/morpheus/api/provisioning_settings_interface.rb +6 -9
  97. data/lib/morpheus/api/read_interface.rb +23 -0
  98. data/lib/morpheus/api/reports_interface.rb +0 -6
  99. data/lib/morpheus/api/rest_interface.rb +12 -10
  100. data/lib/morpheus/api/roles_interface.rb +7 -6
  101. data/lib/morpheus/api/secondary_read_interface.rb +25 -0
  102. data/lib/morpheus/api/secondary_rest_interface.rb +42 -0
  103. data/lib/morpheus/api/security_group_rules_interface.rb +0 -7
  104. data/lib/morpheus/api/security_groups_interface.rb +0 -6
  105. data/lib/morpheus/api/server_types_interface.rb +0 -6
  106. data/lib/morpheus/api/servers_interface.rb +7 -6
  107. data/lib/morpheus/api/service_plans_interface.rb +11 -14
  108. data/lib/morpheus/api/storage_providers_interface.rb +9 -16
  109. data/lib/morpheus/api/subnet_types_interface.rb +1 -7
  110. data/lib/morpheus/api/subnets_interface.rb +0 -6
  111. data/lib/morpheus/api/task_sets_interface.rb +0 -6
  112. data/lib/morpheus/api/tasks_interface.rb +0 -6
  113. data/lib/morpheus/api/user_groups_interface.rb +0 -6
  114. data/lib/morpheus/api/user_settings_interface.rb +38 -18
  115. data/lib/morpheus/api/user_sources_interface.rb +0 -6
  116. data/lib/morpheus/api/users_interface.rb +0 -6
  117. data/lib/morpheus/api/vdi_allocations_interface.rb +9 -0
  118. data/lib/morpheus/api/vdi_apps_interface.rb +9 -0
  119. data/lib/morpheus/api/vdi_gateways_interface.rb +9 -0
  120. data/lib/morpheus/api/vdi_interface.rb +28 -0
  121. data/lib/morpheus/api/vdi_pools_interface.rb +19 -0
  122. data/lib/morpheus/api/virtual_images_interface.rb +0 -6
  123. data/lib/morpheus/api/whitelabel_settings_interface.rb +8 -11
  124. data/lib/morpheus/api/wiki_interface.rb +0 -6
  125. data/lib/morpheus/cli.rb +10 -2
  126. data/lib/morpheus/cli/access_token_command.rb +1 -1
  127. data/lib/morpheus/cli/account_groups_command.rb +4 -4
  128. data/lib/morpheus/cli/apps.rb +68 -84
  129. data/lib/morpheus/cli/archives_command.rb +5 -5
  130. data/lib/morpheus/cli/blueprints_command.rb +5 -5
  131. data/lib/morpheus/cli/boot_scripts_command.rb +1 -1
  132. data/lib/morpheus/cli/catalog_item_types_command.rb +13 -13
  133. data/lib/morpheus/cli/certificates_command.rb +575 -0
  134. data/lib/morpheus/cli/change_password_command.rb +4 -4
  135. data/lib/morpheus/cli/cli_command.rb +72 -16
  136. data/lib/morpheus/cli/clouds.rb +3 -2
  137. data/lib/morpheus/cli/clusters.rb +3 -3
  138. data/lib/morpheus/cli/commands/standard/man_command.rb +4 -5
  139. data/lib/morpheus/cli/credentials.rb +4 -11
  140. data/lib/morpheus/cli/environments_command.rb +1 -1
  141. data/lib/morpheus/cli/execute_schedules_command.rb +3 -3
  142. data/lib/morpheus/cli/hosts.rb +253 -232
  143. data/lib/morpheus/cli/image_builder_command.rb +6 -6
  144. data/lib/morpheus/cli/instance_types.rb +1 -1
  145. data/lib/morpheus/cli/instances.rb +229 -219
  146. data/lib/morpheus/cli/integrations_command.rb +1155 -42
  147. data/lib/morpheus/cli/invoices_command.rb +75 -67
  148. data/lib/morpheus/cli/key_pairs.rb +2 -2
  149. data/lib/morpheus/cli/library_cluster_layouts_command.rb +2 -3
  150. data/lib/morpheus/cli/library_container_scripts_command.rb +4 -5
  151. data/lib/morpheus/cli/library_container_templates_command.rb +5 -1
  152. data/lib/morpheus/cli/library_container_types_command.rb +8 -9
  153. data/lib/morpheus/cli/library_instance_types_command.rb +6 -7
  154. data/lib/morpheus/cli/library_layouts_command.rb +9 -5
  155. data/lib/morpheus/cli/library_option_lists_command.rb +72 -20
  156. data/lib/morpheus/cli/library_option_types_command.rb +8 -4
  157. data/lib/morpheus/cli/library_spec_templates_command.rb +3 -4
  158. data/lib/morpheus/cli/library_upgrades_command.rb +6 -6
  159. data/lib/morpheus/cli/license.rb +2 -2
  160. data/lib/morpheus/cli/load_balancer_types.rb +37 -0
  161. data/lib/morpheus/cli/load_balancers.rb +149 -314
  162. data/lib/morpheus/cli/log_settings_command.rb +7 -3
  163. data/lib/morpheus/cli/login.rb +10 -1
  164. data/lib/morpheus/cli/mixins/load_balancers_helper.rb +156 -0
  165. data/lib/morpheus/cli/mixins/print_helper.rb +44 -18
  166. data/lib/morpheus/cli/mixins/provisioning_helper.rb +4 -4
  167. data/lib/morpheus/cli/mixins/rest_command.rb +657 -0
  168. data/lib/morpheus/cli/mixins/vdi_helper.rb +246 -0
  169. data/lib/morpheus/cli/network_routers_command.rb +1187 -176
  170. data/lib/morpheus/cli/networks_command.rb +195 -102
  171. data/lib/morpheus/cli/option_types.rb +66 -71
  172. data/lib/morpheus/cli/policies_command.rb +0 -1
  173. data/lib/morpheus/cli/power_schedules_command.rb +3 -3
  174. data/lib/morpheus/cli/preseed_scripts_command.rb +1 -1
  175. data/lib/morpheus/cli/remote.rb +2 -2
  176. data/lib/morpheus/cli/reports_command.rb +4 -1
  177. data/lib/morpheus/cli/roles.rb +224 -64
  178. data/lib/morpheus/cli/security_group_rules.rb +1 -1
  179. data/lib/morpheus/cli/setup.rb +0 -1
  180. data/lib/morpheus/cli/subnets_command.rb +11 -2
  181. data/lib/morpheus/cli/tenants_command.rb +21 -23
  182. data/lib/morpheus/cli/user_groups_command.rb +3 -3
  183. data/lib/morpheus/cli/user_settings_command.rb +268 -57
  184. data/lib/morpheus/cli/user_sources_command.rb +3 -3
  185. data/lib/morpheus/cli/users.rb +3 -3
  186. data/lib/morpheus/cli/vdi_allocations_command.rb +159 -0
  187. data/lib/morpheus/cli/vdi_apps_command.rb +317 -0
  188. data/lib/morpheus/cli/vdi_command.rb +359 -0
  189. data/lib/morpheus/cli/vdi_gateways_command.rb +290 -0
  190. data/lib/morpheus/cli/vdi_pools_command.rb +571 -0
  191. data/lib/morpheus/cli/version.rb +1 -1
  192. data/lib/morpheus/cli/virtual_images.rb +1 -1
  193. data/lib/morpheus/cli/whoami.rb +0 -15
  194. data/lib/morpheus/cli/wiki_command.rb +1 -1
  195. data/lib/morpheus/ext/string.rb +41 -0
  196. data/lib/morpheus/formatters.rb +4 -0
  197. data/lib/morpheus/rest_client.rb +30 -0
  198. data/lib/morpheus/terminal.rb +15 -7
  199. metadata +27 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 537ea8ecb044cb316ca3c7610ff9d48d2cfdea448c37c2ce171d797143b9d5bb
4
- data.tar.gz: e80110f66f9a28496f507bebc117fb7aa74f770f33f8aadb9078bf331b4099f7
3
+ metadata.gz: e27f28e852866d25457815c852eec19a3f65bd3b0ae8a33d8e055d990f631e79
4
+ data.tar.gz: 5270f5c81e872491cbf9e1e59f33cf78bf233c152c1347fa61cb01c544073e34
5
5
  SHA512:
6
- metadata.gz: 0fff28a9b02ccbff264efa449fd56455316af3263c990cc15f37eae658f45c44e47f5138c33428744d0b687850fa7a710f9fe7193ca753da82057c5570da1ab0
7
- data.tar.gz: 7738424a32347e6e51970a7b4542accf527057f1634f4a798ec8e98cf0a908c92b5a14a0fda217dd2f94f2666c0d588f9935d5a0f2ab71b7dc78daa04b97563f
6
+ metadata.gz: 172818b1030b243ebb2c9c7e316b0cefe173b5a198ff8184f7c0b7bce275954e80109b45c426530ef1587635199e6cc17dedc248011cc11626e2d0f5e8f3f1c1
7
+ data.tar.gz: 45bdeca37c208f7e7889bd9ab87b0012fea6623faf1b80628fef2ad0df55182388c8e1cd647f9fdd51628d48a4d6cca715e718bb655c8612683fe4ffc9ede3f8
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.0.3
3
+ RUN gem install morpheus-cli -v 5.3.2.1
4
4
 
5
5
  ENTRYPOINT ["morpheus"]
data/README.md CHANGED
@@ -23,8 +23,6 @@ And then execute:
23
23
 
24
24
  $ bundle install
25
25
 
26
-
27
-
28
26
  ## Usage
29
27
 
30
28
  ### morpheus command
@@ -32,7 +30,7 @@ And then execute:
32
30
  This gem installs the [morpheus](https://github.com/gomorpheus/morpheus-cli/wiki/CLI-Manual) binary for running commands in your terminal shell.
33
31
 
34
32
  ```sh
35
- morpheus remote add demo https://demo.mymorpheus.com
33
+ morpheus remote add
36
34
  morpheus instances list
37
35
  ```
38
36
 
@@ -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)
@@ -146,6 +147,7 @@ class Morpheus::APIClient
146
147
  # :headers - Extra headers to add. This expects a Hash like {'Content-Type' => 'application/json'}.
147
148
  # :timeout - A custom timeout in seconds for api requests. The default is 30. todo: separate timeout options
148
149
  def execute(opts, options={})
150
+ # Morpheus::Logging::DarkPrinter.puts "Morpheus::RestClient.execute(#{opts})" if Morpheus::Logging.debug?
149
151
  # ok, always prepend @base_url, let the caller specify it exactly or leave it off.
150
152
  # this allows the Interface definition be lazy and not specify the base_url in every call to execute()
151
153
  # it will be used though...
@@ -168,13 +170,13 @@ class Morpheus::APIClient
168
170
  # convert to lowercase Symbol like :get, :post, :put, or :delete
169
171
  opts[:method] = opts[:method].to_s.downcase.to_sym
170
172
  end
171
-
173
+
172
174
  # could validate method here...
173
175
 
174
176
  # apply default headers
175
177
  opts[:headers] ||= {}
176
178
 
177
- is_multipart = (opts[:payload].is_a?(Hash) && opts[:payload][:multipart])
179
+ is_multipart = (opts[:payload].is_a?(Hash) && opts[:payload][:multipart] == true)
178
180
 
179
181
  # Authorization: apply our access token
180
182
  if authorization_required?
@@ -187,15 +189,20 @@ class Morpheus::APIClient
187
189
  end
188
190
  end
189
191
 
190
- # Content-Type default is application/json
191
- if opts[:headers]['Content-Type'].nil? && opts[:payload] && is_multipart == false
192
- opts[:headers]['Content-Type'] = (default_content_type || 'application/json')
193
- end
192
+ # POST and PUT requests default Content-Type is application/json
193
+ # set Content-Type or pass :form_data => true if you want application/x-www-form-urlencoded
194
+ # or use opts[:payload][:multipart] = true if you need multipart/form-data
195
+ if opts[:method] == :post || opts[:method] == :put
196
+ if opts[:headers]['Content-Type'].nil? && opts[:payload] && is_multipart != true && opts[:form_data] != true
197
+ opts[:headers]['Content-Type'] = (default_content_type || 'application/json')
198
+ end
194
199
 
195
- # this could be nice too..
196
- # if opts[:headers]['Content-Type'] == 'application/json' && opts[:payload].is_a?(Hash)
197
- # opts[:payload] = opts[:payload].to_json
198
- # end
200
+ # Auto encode payload as JSON, just to be nice
201
+ if opts[:headers]['Content-Type'] == 'application/json' && !opts[:payload].is_a?(String)
202
+ opts[:payload] = opts[:payload].to_json
203
+ end
204
+
205
+ end
199
206
 
200
207
  # always use custom timeout eg. from --timeout option
201
208
  # or use default_timeout for GET requests only.
@@ -254,7 +261,7 @@ class Morpheus::APIClient
254
261
  # end
255
262
 
256
263
  # Morpheus::Logging::DarkPrinter.puts "Morpheus::RestClient.execute(#{opts})" if Morpheus::Logging.debug?
257
- # instead, using ::RestClient.log = STDOUT
264
+ # instead, using ::RestClient.log = STDOUT
258
265
  response = Morpheus::RestClient.execute(opts)
259
266
  if opts[:parse_json] != false && options[:parse_json] != false
260
267
  return JSON.parse(response.to_s)
@@ -317,11 +324,12 @@ class Morpheus::APIClient
317
324
 
318
325
  def common_interface_options
319
326
  {
320
- url: @base_url,
321
- access_token: @access_token,
322
- refresh_token: @refresh_token,
323
- expires_at: @expires_at,
324
- 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
325
333
  }
326
334
  end
327
335
 
@@ -336,10 +344,10 @@ class Morpheus::APIClient
336
344
  def setup
337
345
  Morpheus::SetupInterface.new(common_interface_options).setopts(@options)
338
346
  end
339
-
347
+
340
348
  def auth
341
349
  # Morpheus::AuthInterface.new(common_interface_options).setopts(@options)
342
- 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)
343
351
  end
344
352
 
345
353
  def forgot
@@ -367,385 +375,405 @@ class Morpheus::APIClient
367
375
  end
368
376
 
369
377
  def options
370
- Morpheus::OptionsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
378
+ Morpheus::OptionsInterface.new(common_interface_options).setopts(@options)
371
379
  end
372
380
 
373
381
  def groups
374
- Morpheus::GroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
382
+ Morpheus::GroupsInterface.new(common_interface_options).setopts(@options)
375
383
  end
376
384
 
377
385
  def account_groups
378
- Morpheus::AccountGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
386
+ Morpheus::AccountGroupsInterface.new(common_interface_options).setopts(@options)
379
387
  end
380
388
 
381
389
  def clouds
382
- Morpheus::CloudsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
390
+ Morpheus::CloudsInterface.new(common_interface_options).setopts(@options)
383
391
  end
384
392
 
385
393
  def cloud_datastores
386
- Morpheus::CloudDatastoresInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
394
+ Morpheus::CloudDatastoresInterface.new(common_interface_options).setopts(@options)
387
395
  end
388
396
 
389
397
  def cloud_resource_pools
390
- Morpheus::CloudResourcePoolsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
398
+ Morpheus::CloudResourcePoolsInterface.new(common_interface_options).setopts(@options)
391
399
  end
392
400
 
393
401
  def cloud_folders
394
- Morpheus::CloudFoldersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
402
+ Morpheus::CloudFoldersInterface.new(common_interface_options).setopts(@options)
395
403
  end
396
404
 
397
405
  def datastores
398
- Morpheus::DatastoresInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
406
+ Morpheus::DatastoresInterface.new(common_interface_options).setopts(@options)
399
407
  end
400
408
 
401
409
  def servers
402
- Morpheus::ServersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
410
+ Morpheus::ServersInterface.new(common_interface_options).setopts(@options)
403
411
  end
404
412
 
405
413
  def instances
406
- Morpheus::InstancesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
414
+ Morpheus::InstancesInterface.new(common_interface_options).setopts(@options)
407
415
  end
408
416
 
409
417
  def appliance_settings
410
- Morpheus::ApplianceSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
418
+ Morpheus::ApplianceSettingsInterface.new(common_interface_options).setopts(@options)
411
419
  end
412
420
 
413
421
  def provisioning_settings
414
- Morpheus::ProvisioningSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
422
+ Morpheus::ProvisioningSettingsInterface.new(common_interface_options).setopts(@options)
415
423
  end
416
424
 
417
425
  def provisioning_licenses
418
- Morpheus::ProvisioningLicensesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
426
+ Morpheus::ProvisioningLicensesInterface.new(common_interface_options).setopts(@options)
419
427
  end
420
428
 
421
429
  def provisioning_license_types
422
- Morpheus::ProvisioningLicenseTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
430
+ Morpheus::ProvisioningLicenseTypesInterface.new(common_interface_options).setopts(@options)
423
431
  end
424
432
 
425
433
  def containers
426
- Morpheus::ContainersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
434
+ Morpheus::ContainersInterface.new(common_interface_options).setopts(@options)
427
435
  end
428
436
 
429
437
  def instance_types
430
- Morpheus::InstanceTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
438
+ Morpheus::InstanceTypesInterface.new(common_interface_options).setopts(@options)
431
439
  end
432
440
 
433
441
  def integrations
434
- Morpheus::IntegrationsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
442
+ Morpheus::IntegrationsInterface.new(common_interface_options).setopts(@options)
443
+ end
444
+
445
+ def integration_types
446
+ Morpheus::IntegrationTypesInterface.new(common_interface_options).setopts(@options)
435
447
  end
436
448
 
437
449
  def jobs
438
- Morpheus::JobsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
450
+ Morpheus::JobsInterface.new(common_interface_options).setopts(@options)
439
451
  end
440
452
 
441
453
  def server_types
442
- Morpheus::ServerTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
454
+ Morpheus::ServerTypesInterface.new(common_interface_options).setopts(@options)
443
455
  end
444
456
 
445
457
  def provision_types
446
- Morpheus::ProvisionTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
458
+ Morpheus::ProvisionTypesInterface.new(common_interface_options).setopts(@options)
447
459
  end
448
460
 
449
461
  def service_plans
450
- Morpheus::ServicePlansInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
462
+ Morpheus::ServicePlansInterface.new(common_interface_options).setopts(@options)
451
463
  end
452
464
 
453
465
  def price_sets
454
- Morpheus::PriceSetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
466
+ Morpheus::PriceSetsInterface.new(common_interface_options).setopts(@options)
455
467
  end
456
468
 
457
469
  def prices
458
- Morpheus::PricesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
470
+ Morpheus::PricesInterface.new(common_interface_options).setopts(@options)
459
471
  end
460
472
 
461
473
  def load_balancers
462
- 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)
463
487
  end
464
488
 
465
489
  def tasks
466
- Morpheus::TasksInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
490
+ Morpheus::TasksInterface.new(common_interface_options).setopts(@options)
467
491
  end
468
492
 
469
493
  def task_sets
470
- Morpheus::TaskSetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
494
+ Morpheus::TaskSetsInterface.new(common_interface_options).setopts(@options)
471
495
  end
472
496
 
473
497
  def virtual_images
474
- Morpheus::VirtualImagesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
498
+ Morpheus::VirtualImagesInterface.new(common_interface_options).setopts(@options)
475
499
  end
476
500
 
477
501
  def apps
478
- Morpheus::AppsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
502
+ Morpheus::AppsInterface.new(common_interface_options).setopts(@options)
479
503
  end
480
504
 
481
505
  def blueprints
482
- Morpheus::BlueprintsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
506
+ Morpheus::BlueprintsInterface.new(common_interface_options).setopts(@options)
483
507
  end
484
508
 
485
509
  def deploy
486
- Morpheus::DeployInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
510
+ Morpheus::DeployInterface.new(common_interface_options).setopts(@options)
487
511
  end
488
512
 
489
513
  def deployments
490
- Morpheus::DeploymentsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
514
+ Morpheus::DeploymentsInterface.new(common_interface_options).setopts(@options)
491
515
  end
492
516
 
493
517
  def security_groups
494
- Morpheus::SecurityGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
518
+ Morpheus::SecurityGroupsInterface.new(common_interface_options).setopts(@options)
495
519
  end
496
520
 
497
521
  def security_group_rules
498
- Morpheus::SecurityGroupRulesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
522
+ Morpheus::SecurityGroupRulesInterface.new(common_interface_options).setopts(@options)
499
523
  end
500
524
 
501
525
  def clusters
502
- Morpheus::ClustersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
526
+ Morpheus::ClustersInterface.new(common_interface_options).setopts(@options)
503
527
  end
504
528
 
505
529
  def accounts
506
- Morpheus::AccountsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
530
+ Morpheus::AccountsInterface.new(common_interface_options).setopts(@options)
507
531
  end
508
532
 
509
533
  def approvals
510
- Morpheus::ApprovalsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
534
+ Morpheus::ApprovalsInterface.new(common_interface_options).setopts(@options)
511
535
  end
512
536
 
513
537
  def users
514
- Morpheus::UsersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
538
+ Morpheus::UsersInterface.new(common_interface_options).setopts(@options)
515
539
  end
516
540
 
517
541
  def user_groups
518
- Morpheus::UserGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
542
+ Morpheus::UserGroupsInterface.new(common_interface_options).setopts(@options)
519
543
  end
520
544
 
521
545
  def user_sources
522
- Morpheus::UserSourcesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
546
+ Morpheus::UserSourcesInterface.new(common_interface_options).setopts(@options)
523
547
  end
524
548
 
525
549
  def logs
526
- Morpheus::LogsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
550
+ Morpheus::LogsInterface.new(common_interface_options).setopts(@options)
527
551
  end
528
552
 
529
553
  def roles
530
- Morpheus::RolesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
554
+ Morpheus::RolesInterface.new(common_interface_options).setopts(@options)
531
555
  end
532
556
 
533
557
  def key_pairs
534
- Morpheus::KeyPairsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
558
+ Morpheus::KeyPairsInterface.new(common_interface_options).setopts(@options)
535
559
  end
536
560
 
537
- def license
538
- Morpheus::LicenseInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
561
+ def certificates
562
+ Morpheus::CertificatesInterface.new(common_interface_options).setopts(@options)
563
+ end
564
+
565
+ def certificate_types
566
+ Morpheus::CertificateTypesInterface.new(common_interface_options).setopts(@options)
539
567
  end
540
568
 
541
- def custom_instance_types
542
- Morpheus::CustomInstanceTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
569
+ def license
570
+ Morpheus::LicenseInterface.new(common_interface_options).setopts(@options)
543
571
  end
544
572
 
545
573
  def option_types
546
- Morpheus::OptionTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
574
+ Morpheus::OptionTypesInterface.new(common_interface_options).setopts(@options)
547
575
  end
548
576
 
549
577
  def option_type_lists
550
- Morpheus::OptionTypeListsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
578
+ Morpheus::OptionTypeListsInterface.new(common_interface_options).setopts(@options)
551
579
  end
552
580
 
553
581
  def power_schedules
554
- Morpheus::PowerSchedulesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
582
+ Morpheus::PowerSchedulesInterface.new(common_interface_options).setopts(@options)
555
583
  end
556
584
 
557
585
  def execute_schedules
558
- Morpheus::ExecuteSchedulesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
586
+ Morpheus::ExecuteSchedulesInterface.new(common_interface_options).setopts(@options)
559
587
  end
560
588
 
561
589
  def monitoring
562
- Morpheus::MonitoringInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
590
+ Morpheus::MonitoringInterface.new(common_interface_options).setopts(@options)
563
591
  end
564
592
 
565
593
  # def checks
566
- # # Morpheus::MonitoringChecksInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
594
+ # # Morpheus::MonitoringChecksInterface.new(common_interface_options).setopts(@options)
567
595
  # monitoring.checks
568
596
  # end
569
597
 
570
598
  # def incidents
571
- # # Morpheus::MonitoringIncidentsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
599
+ # # Morpheus::MonitoringIncidentsInterface.new(common_interface_options).setopts(@options)
572
600
  # monitoring.incidents
573
601
  # end
574
602
 
575
603
  def policies
576
- Morpheus::PoliciesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
604
+ Morpheus::PoliciesInterface.new(common_interface_options).setopts(@options)
577
605
  end
578
606
 
579
607
  def group_policies
580
- Morpheus::GroupPoliciesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
608
+ Morpheus::GroupPoliciesInterface.new(common_interface_options).setopts(@options)
581
609
  end
582
610
 
583
611
  def cloud_policies
584
- Morpheus::CloudPoliciesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
612
+ Morpheus::CloudPoliciesInterface.new(common_interface_options).setopts(@options)
585
613
  end
586
614
 
587
615
  def networks
588
- Morpheus::NetworksInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
616
+ Morpheus::NetworksInterface.new(common_interface_options).setopts(@options)
589
617
  end
590
618
 
591
619
  def network_types
592
- Morpheus::NetworkTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
620
+ Morpheus::NetworkTypesInterface.new(common_interface_options).setopts(@options)
593
621
  end
594
622
 
595
623
  def subnets
596
- Morpheus::SubnetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
624
+ Morpheus::SubnetsInterface.new(common_interface_options).setopts(@options)
597
625
  end
598
626
 
599
627
  def subnet_types
600
- Morpheus::SubnetTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
628
+ Morpheus::SubnetTypesInterface.new(common_interface_options).setopts(@options)
601
629
  end
602
630
 
603
631
  def network_groups
604
- Morpheus::NetworkGroupsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
632
+ Morpheus::NetworkGroupsInterface.new(common_interface_options).setopts(@options)
605
633
  end
606
634
 
607
635
  def network_pools
608
- Morpheus::NetworkPoolsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
636
+ Morpheus::NetworkPoolsInterface.new(common_interface_options).setopts(@options)
609
637
  end
610
638
 
611
639
  def network_pool_ips
612
- Morpheus::NetworkPoolIpsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
640
+ Morpheus::NetworkPoolIpsInterface.new(common_interface_options).setopts(@options)
613
641
  end
614
642
 
615
643
  def network_routers
616
- Morpheus::NetworkRoutersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
644
+ Morpheus::NetworkRoutersInterface.new(common_interface_options).setopts(@options)
617
645
  end
618
646
 
619
647
  def network_services
620
- Morpheus::NetworkServicesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
648
+ Morpheus::NetworkServicesInterface.new(common_interface_options).setopts(@options)
621
649
  end
622
650
 
623
651
  def network_security_servers
624
- Morpheus::NetworkSecurityServersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
652
+ Morpheus::NetworkSecurityServersInterface.new(common_interface_options).setopts(@options)
625
653
  end
626
654
 
627
655
  def network_pool_servers
628
- Morpheus::NetworkPoolServersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
656
+ Morpheus::NetworkPoolServersInterface.new(common_interface_options).setopts(@options)
629
657
  end
630
658
 
631
659
  def network_domains
632
- Morpheus::NetworkDomainsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
660
+ Morpheus::NetworkDomainsInterface.new(common_interface_options).setopts(@options)
633
661
  end
634
662
 
635
663
  def network_domain_records
636
- Morpheus::NetworkDomainRecordsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
664
+ Morpheus::NetworkDomainRecordsInterface.new(common_interface_options).setopts(@options)
637
665
  end
638
666
 
639
667
  def network_proxies
640
- Morpheus::NetworkProxiesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
668
+ Morpheus::NetworkProxiesInterface.new(common_interface_options).setopts(@options)
641
669
  end
642
670
 
643
671
  def archive_buckets
644
- Morpheus::ArchiveBucketsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
672
+ Morpheus::ArchiveBucketsInterface.new(common_interface_options).setopts(@options)
645
673
  end
646
674
 
647
675
  def archive_files
648
- Morpheus::ArchiveFilesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
676
+ Morpheus::ArchiveFilesInterface.new(common_interface_options).setopts(@options)
649
677
  end
650
678
 
651
679
  def image_builder
652
- Morpheus::ImageBuilderInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
680
+ Morpheus::ImageBuilderInterface.new(common_interface_options).setopts(@options)
653
681
  end
654
682
 
655
683
  def storage_providers
656
- Morpheus::StorageProvidersInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
684
+ Morpheus::StorageProvidersInterface.new(common_interface_options).setopts(@options)
657
685
  end
658
686
 
659
687
  def library_instance_types
660
- Morpheus::LibraryInstanceTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
688
+ Morpheus::LibraryInstanceTypesInterface.new(common_interface_options).setopts(@options)
661
689
  end
662
690
 
663
691
  def library_layouts
664
- Morpheus::LibraryLayoutsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
692
+ Morpheus::LibraryLayoutsInterface.new(common_interface_options).setopts(@options)
665
693
  end
666
694
 
667
695
  def library_container_upgrades
668
- Morpheus::LibraryContainerUpgradesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
696
+ Morpheus::LibraryContainerUpgradesInterface.new(common_interface_options).setopts(@options)
669
697
  end
670
698
 
671
699
  def library_container_types
672
- Morpheus::LibraryContainerTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
700
+ Morpheus::LibraryContainerTypesInterface.new(common_interface_options).setopts(@options)
673
701
  end
674
702
 
675
703
  def library_container_scripts
676
- Morpheus::LibraryContainerScriptsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
704
+ Morpheus::LibraryContainerScriptsInterface.new(common_interface_options).setopts(@options)
677
705
  end
678
706
 
679
707
  def library_container_templates
680
- Morpheus::LibraryContainerTemplatesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
708
+ Morpheus::LibraryContainerTemplatesInterface.new(common_interface_options).setopts(@options)
681
709
  end
682
710
 
683
711
  def library_cluster_layouts
684
- Morpheus::LibraryClusterLayoutsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
712
+ Morpheus::LibraryClusterLayoutsInterface.new(common_interface_options).setopts(@options)
685
713
  end
686
714
 
687
715
  def library_spec_templates
688
- Morpheus::LibrarySpecTemplatesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
716
+ Morpheus::LibrarySpecTemplatesInterface.new(common_interface_options).setopts(@options)
689
717
  end
690
718
 
691
719
  def library_spec_template_types
692
- Morpheus::LibrarySpecTemplateTypesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
720
+ Morpheus::LibrarySpecTemplateTypesInterface.new(common_interface_options).setopts(@options)
693
721
  end
694
722
 
695
723
  def packages
696
- Morpheus::PackagesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
724
+ Morpheus::PackagesInterface.new(common_interface_options).setopts(@options)
697
725
  end
698
726
 
699
727
  def cypher
700
- Morpheus::CypherInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
728
+ Morpheus::CypherInterface.new(common_interface_options).setopts(@options)
701
729
  end
702
730
 
703
731
  def old_cypher
704
- Morpheus::OldCypherInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
732
+ Morpheus::OldCypherInterface.new(common_interface_options).setopts(@options)
705
733
  end
706
734
 
707
735
  def execution_request
708
- Morpheus::ExecutionRequestInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
736
+ Morpheus::ExecutionRequestInterface.new(common_interface_options).setopts(@options)
709
737
  end
710
738
 
711
739
  def file_copy_request
712
- Morpheus::FileCopyRequestInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
740
+ Morpheus::FileCopyRequestInterface.new(common_interface_options).setopts(@options)
713
741
  end
714
742
 
715
743
  def processes
716
- Morpheus::ProcessesInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
744
+ Morpheus::ProcessesInterface.new(common_interface_options).setopts(@options)
717
745
  end
718
746
 
719
747
  def reports
720
- Morpheus::ReportsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
748
+ Morpheus::ReportsInterface.new(common_interface_options).setopts(@options)
721
749
  end
722
750
 
723
751
  def environments
724
- Morpheus::EnvironmentsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
752
+ Morpheus::EnvironmentsInterface.new(common_interface_options).setopts(@options)
725
753
  end
726
754
 
727
755
  def backup_settings
728
- Morpheus::BackupSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
756
+ Morpheus::BackupSettingsInterface.new(common_interface_options).setopts(@options)
729
757
  end
730
758
 
731
759
  def log_settings
732
- Morpheus::LogSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
760
+ Morpheus::LogSettingsInterface.new(common_interface_options).setopts(@options)
733
761
  end
734
762
 
735
763
  def whitelabel_settings
736
- Morpheus::WhitelabelSettingsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
764
+ Morpheus::WhitelabelSettingsInterface.new(common_interface_options).setopts(@options)
737
765
  end
738
766
 
739
767
  def wiki
740
- Morpheus::WikiInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
768
+ Morpheus::WikiInterface.new(common_interface_options).setopts(@options)
741
769
  end
742
770
 
743
771
  def budgets
744
- Morpheus::BudgetsInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
772
+ Morpheus::BudgetsInterface.new(common_interface_options).setopts(@options)
745
773
  end
746
774
 
747
775
  def health
748
- Morpheus::HealthInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
776
+ Morpheus::HealthInterface.new(common_interface_options).setopts(@options)
749
777
  end
750
778
 
751
779
  def invoices
@@ -757,7 +785,7 @@ class Morpheus::APIClient
757
785
  end
758
786
 
759
787
  def guidance
760
- Morpheus::GuidanceInterface.new(@access_token, @refresh_token, @expires_at, @base_url).setopts(@options)
788
+ Morpheus::GuidanceInterface.new(common_interface_options).setopts(@options)
761
789
  end
762
790
 
763
791
  def projects
@@ -787,7 +815,27 @@ class Morpheus::APIClient
787
815
  def billing
788
816
  Morpheus::BillingInterface.new(common_interface_options).setopts(@options)
789
817
  end
790
-
818
+
819
+ def vdi
820
+ Morpheus::VdiInterface.new(common_interface_options).setopts(@options)
821
+ end
822
+
823
+ def vdi_pools
824
+ Morpheus::VdiPoolsInterface.new(common_interface_options).setopts(@options)
825
+ end
826
+
827
+ def vdi_allocations
828
+ Morpheus::VdiAllocationsInterface.new(common_interface_options).setopts(@options)
829
+ end
830
+
831
+ def vdi_apps
832
+ Morpheus::VdiAppsInterface.new(common_interface_options).setopts(@options)
833
+ end
834
+
835
+ def vdi_gateways
836
+ Morpheus::VdiGatewaysInterface.new(common_interface_options).setopts(@options)
837
+ end
838
+
791
839
  # add new interfaces here
792
840
 
793
841
  protected