morpheus-cli 4.1.4 → 4.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/lib/morpheus.rb +5 -0
  3. data/lib/morpheus/api.rb +2 -2
  4. data/lib/morpheus/api/api_client.rb +47 -12
  5. data/lib/morpheus/api/appliance_settings_interface.rb +30 -0
  6. data/lib/morpheus/api/auth_interface.rb +14 -10
  7. data/lib/morpheus/api/clouds_interface.rb +7 -0
  8. data/lib/morpheus/api/clusters_interface.rb +17 -5
  9. data/lib/morpheus/api/custom_instance_types_interface.rb +2 -3
  10. data/lib/morpheus/api/deployments_interface.rb +7 -0
  11. data/lib/morpheus/api/execute_schedules_interface.rb +2 -3
  12. data/lib/morpheus/api/groups_interface.rb +7 -0
  13. data/lib/morpheus/api/license_interface.rb +9 -2
  14. data/lib/morpheus/api/load_balancers_interface.rb +7 -0
  15. data/lib/morpheus/api/logs_interface.rb +11 -2
  16. data/lib/morpheus/api/monitoring_alerts_interface.rb +45 -0
  17. data/lib/morpheus/api/monitoring_checks_interface.rb +2 -2
  18. data/lib/morpheus/api/monitoring_interface.rb +13 -8
  19. data/lib/morpheus/api/power_schedules_interface.rb +2 -3
  20. data/lib/morpheus/api/servers_interface.rb +5 -2
  21. data/lib/morpheus/api/setup_interface.rb +25 -7
  22. data/lib/morpheus/api/task_sets_interface.rb +7 -1
  23. data/lib/morpheus/api/tasks_interface.rb +7 -0
  24. data/lib/morpheus/api/virtual_images_interface.rb +2 -3
  25. data/lib/morpheus/api/whitelabel_settings_interface.rb +60 -0
  26. data/lib/morpheus/cli.rb +18 -14
  27. data/lib/morpheus/cli/access_token_command.rb +18 -2
  28. data/lib/morpheus/cli/appliance_settings_command.rb +303 -0
  29. data/lib/morpheus/cli/apps.rb +4 -3
  30. data/lib/morpheus/cli/archives_command.rb +0 -21
  31. data/lib/morpheus/cli/blueprints_command.rb +2 -2
  32. data/lib/morpheus/cli/cli_command.rb +32 -8
  33. data/lib/morpheus/cli/clouds.rb +6 -11
  34. data/lib/morpheus/cli/clusters.rb +346 -117
  35. data/lib/morpheus/cli/command_error.rb +4 -0
  36. data/lib/morpheus/cli/commands/standard/man_command.rb +1 -1
  37. data/lib/morpheus/cli/containers_command.rb +2 -1
  38. data/lib/morpheus/cli/credentials.rb +49 -4
  39. data/lib/morpheus/cli/deployments.rb +2 -2
  40. data/lib/morpheus/cli/dot_file.rb +2 -2
  41. data/lib/morpheus/cli/error_handler.rb +6 -3
  42. data/lib/morpheus/cli/execute_schedules_command.rb +1 -1
  43. data/lib/morpheus/cli/groups.rb +4 -4
  44. data/lib/morpheus/cli/hosts.rb +3 -2
  45. data/lib/morpheus/cli/image_builder_command.rb +0 -21
  46. data/lib/morpheus/cli/instances.rb +17 -4
  47. data/lib/morpheus/cli/library_container_types_command.rb +1 -1
  48. data/lib/morpheus/cli/library_layouts_command.rb +1 -1
  49. data/lib/morpheus/cli/library_upgrades_command.rb +1 -1
  50. data/lib/morpheus/cli/license.rb +185 -72
  51. data/lib/morpheus/cli/load_balancers.rb +4 -4
  52. data/lib/morpheus/cli/login.rb +4 -0
  53. data/lib/morpheus/cli/logs_command.rb +132 -0
  54. data/lib/morpheus/cli/mixins/infrastructure_helper.rb +2 -2
  55. data/lib/morpheus/cli/mixins/logs_helper.rb +65 -0
  56. data/lib/morpheus/cli/mixins/monitoring_helper.rb +410 -28
  57. data/lib/morpheus/cli/mixins/print_helper.rb +14 -4
  58. data/lib/morpheus/cli/monitoring_alerts_command.rb +800 -0
  59. data/lib/morpheus/cli/monitoring_apps_command.rb +85 -28
  60. data/lib/morpheus/cli/monitoring_checks_command.rb +60 -27
  61. data/lib/morpheus/cli/monitoring_contacts_command.rb +54 -79
  62. data/lib/morpheus/cli/monitoring_groups_command.rb +62 -23
  63. data/lib/morpheus/cli/monitoring_incidents_command.rb +91 -70
  64. data/lib/morpheus/cli/network_pools_command.rb +39 -23
  65. data/lib/morpheus/cli/power_schedules_command.rb +1 -1
  66. data/lib/morpheus/cli/remote.rb +834 -275
  67. data/lib/morpheus/cli/roles.rb +100 -38
  68. data/lib/morpheus/cli/tasks.rb +1 -1
  69. data/lib/morpheus/cli/user_settings_command.rb +20 -12
  70. data/lib/morpheus/cli/version.rb +1 -1
  71. data/lib/morpheus/cli/virtual_images.rb +1 -1
  72. data/lib/morpheus/cli/whitelabel_settings_command.rb +546 -0
  73. data/lib/morpheus/cli/whoami.rb +1 -1
  74. data/lib/morpheus/cli/workflows.rb +2 -2
  75. data/lib/morpheus/terminal.rb +22 -8
  76. metadata +11 -2
@@ -222,7 +222,7 @@ class Morpheus::Cli::Whoami
222
222
  print reset,"\n"
223
223
  else
224
224
  print "\n", reset
225
- print "No active group. See `groups use`\n",reset
225
+ print cyan, "No active group. See `groups use`\n",reset
226
226
  print reset,"\n"
227
227
  end
228
228
 
@@ -368,7 +368,7 @@ class Morpheus::Cli::Workflows
368
368
  end
369
369
 
370
370
  def find_workflow_by_name(name)
371
- workflows = @task_sets_interface.get({name: name.to_s})['taskSets']
371
+ workflows = @task_sets_interface.list({name: name.to_s})['taskSets']
372
372
  if workflows.empty?
373
373
  print_red_alert "Workflow not found by name #{name}"
374
374
  return nil
@@ -404,7 +404,7 @@ class Morpheus::Cli::Workflows
404
404
  end
405
405
 
406
406
  def find_task_by_name(name)
407
- tasks = @tasks_interface.get({name: name.to_s})['tasks']
407
+ tasks = @tasks_interface.list({name: name.to_s})['tasks']
408
408
  if tasks.empty?
409
409
  print_red_alert "Task not found by name #{name}"
410
410
  return nil
@@ -85,10 +85,10 @@ module Morpheus
85
85
  # the global Morpheus::Terminal instance
86
86
  # This should go away, but it needed for now...
87
87
  def self.instance
88
- @morphterm
88
+ @morphterm # ||= self.new({})
89
89
  end
90
90
 
91
- # hack alert! This should go away, but it needed for now...
91
+ # hack alert! This should go away, but is needed for now...
92
92
  def self.new(*args)
93
93
  obj = super(*args)
94
94
  @morphterm = obj
@@ -107,12 +107,14 @@ module Morpheus
107
107
  # @param [IO] stderr
108
108
  # @stderr = stderr
109
109
  def initialize(stdin=STDIN,stdout=STDOUT, stderr=STDERR, homedir=nil)
110
- # todo: establish config context for executing commands,
111
- # so you can run them in parallel within the same process
112
- # that means not using globals and class instance vars
113
- # just return an exit code / err, instead of raising SystemExit
114
-
115
-
110
+ attrs = {}
111
+ if stdin.is_a?(Hash)
112
+ attrs = stdin.clone()
113
+ stdin = attrs[:stdin] || STDIN
114
+ stdout = attrs[:stdout] || STDOUT
115
+ stderr = attrs[:stderr] || STDERR
116
+ homedir = attrs[:homedir] || attrs[:home] || attrs[:home_directory]
117
+ end
116
118
  # establish IO
117
119
  # @stdin, @stdout, @stderr = stdin, stdout, stderr
118
120
  set_stdin(stdin)
@@ -140,6 +142,14 @@ module Morpheus
140
142
  @angry_prompt ||= Morpheus::Terminal.angry_prompt
141
143
  end
142
144
 
145
+ def to_s
146
+ "<##{self.class}:#{self.object_id.to_s(8)} @stdin=#{@stdin} @stdout=#{@base_url} @stderr=#{@stderr} @home=#{@home_directory} @prompt=#{@prompt} >"
147
+ end
148
+
149
+ def inspect
150
+ to_s
151
+ end
152
+
143
153
  # execute .morpheus_profile startup script
144
154
  def execute_profile_script(rerun=false)
145
155
  if @profile_dot_file
@@ -181,6 +191,10 @@ module Morpheus
181
191
  @stderr
182
192
  end
183
193
 
194
+ def home_directory=(homedir)
195
+ set_home_directory(homedir)
196
+ end
197
+
184
198
  def set_home_directory(homedir)
185
199
  full_homedir = File.expand_path(homedir)
186
200
  # if !Dir.exists?(full_homedir)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: morpheus-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.4
4
+ version: 4.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Estes
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2019-10-15 00:00:00.000000000 Z
14
+ date: 2019-10-30 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: bundler
@@ -156,10 +156,12 @@ files:
156
156
  - README.md
157
157
  - Rakefile
158
158
  - bin/morpheus
159
+ - lib/morpheus.rb
159
160
  - lib/morpheus/api.rb
160
161
  - lib/morpheus/api/account_groups_interface.rb
161
162
  - lib/morpheus/api/accounts_interface.rb
162
163
  - lib/morpheus/api/api_client.rb
164
+ - lib/morpheus/api/appliance_settings_interface.rb
163
165
  - lib/morpheus/api/apps_interface.rb
164
166
  - lib/morpheus/api/archive_buckets_interface.rb
165
167
  - lib/morpheus/api/archive_files_interface.rb
@@ -200,6 +202,7 @@ files:
200
202
  - lib/morpheus/api/license_interface.rb
201
203
  - lib/morpheus/api/load_balancers_interface.rb
202
204
  - lib/morpheus/api/logs_interface.rb
205
+ - lib/morpheus/api/monitoring_alerts_interface.rb
203
206
  - lib/morpheus/api/monitoring_apps_interface.rb
204
207
  - lib/morpheus/api/monitoring_checks_interface.rb
205
208
  - lib/morpheus/api/monitoring_contacts_interface.rb
@@ -244,6 +247,7 @@ files:
244
247
  - lib/morpheus/api/user_sources_interface.rb
245
248
  - lib/morpheus/api/users_interface.rb
246
249
  - lib/morpheus/api/virtual_images_interface.rb
250
+ - lib/morpheus/api/whitelabel_settings_interface.rb
247
251
  - lib/morpheus/api/whoami_interface.rb
248
252
  - lib/morpheus/api/wiki_interface.rb
249
253
  - lib/morpheus/benchmarking.rb
@@ -251,6 +255,7 @@ files:
251
255
  - lib/morpheus/cli/access_token_command.rb
252
256
  - lib/morpheus/cli/account_groups_command.rb
253
257
  - lib/morpheus/cli/accounts.rb
258
+ - lib/morpheus/cli/appliance_settings_command.rb
254
259
  - lib/morpheus/cli/apps.rb
255
260
  - lib/morpheus/cli/archives_command.rb
256
261
  - lib/morpheus/cli/auth_command.rb
@@ -318,14 +323,17 @@ files:
318
323
  - lib/morpheus/cli/load_balancers.rb
319
324
  - lib/morpheus/cli/login.rb
320
325
  - lib/morpheus/cli/logout.rb
326
+ - lib/morpheus/cli/logs_command.rb
321
327
  - lib/morpheus/cli/mixins/accounts_helper.rb
322
328
  - lib/morpheus/cli/mixins/infrastructure_helper.rb
323
329
  - lib/morpheus/cli/mixins/library_helper.rb
330
+ - lib/morpheus/cli/mixins/logs_helper.rb
324
331
  - lib/morpheus/cli/mixins/monitoring_helper.rb
325
332
  - lib/morpheus/cli/mixins/print_helper.rb
326
333
  - lib/morpheus/cli/mixins/processes_helper.rb
327
334
  - lib/morpheus/cli/mixins/provisioning_helper.rb
328
335
  - lib/morpheus/cli/mixins/whoami_helper.rb
336
+ - lib/morpheus/cli/monitoring_alerts_command.rb
329
337
  - lib/morpheus/cli/monitoring_apps_command.rb
330
338
  - lib/morpheus/cli/monitoring_checks_command.rb
331
339
  - lib/morpheus/cli/monitoring_contacts_command.rb
@@ -362,6 +370,7 @@ files:
362
370
  - lib/morpheus/cli/users.rb
363
371
  - lib/morpheus/cli/version.rb
364
372
  - lib/morpheus/cli/virtual_images.rb
373
+ - lib/morpheus/cli/whitelabel_settings_command.rb
365
374
  - lib/morpheus/cli/whoami.rb
366
375
  - lib/morpheus/cli/wiki_command.rb
367
376
  - lib/morpheus/cli/workflows.rb