morpheus-cli 4.1.0 → 4.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b813008442e454799fbb3ff189d1974ceff53cdf2462f0ed2f0c44926d7f9a89
4
- data.tar.gz: 022c6e7a91a66e7167945de986239f6598a38075ed69600ef39bf60407bea330
3
+ metadata.gz: 78556645853b91d56091042831cc0f167eca3120fe58f5e062b24fe90d14475b
4
+ data.tar.gz: 49ad49192a9fc8fd645e63912d932b1fe5a8978c6c11984b5d93fd27281e72ec
5
5
  SHA512:
6
- metadata.gz: 76b7fab3aab20b0e698185b43e87baf1d1b7fe8ad20cb4400a2674edb46d2f43f667896abd4a090f2176cb6795ab339c4190df51e42694d344a60c821b44b29a
7
- data.tar.gz: 1b697421bf324bfa38ca63f74abe59c7890545ea38c8a340da7f15e4ceba8fa22d868b403fb4105d5e0629a700047cfc91458a459120dbce9dd650d7ce921950
6
+ metadata.gz: fa95516c8ce7fa863fec5172fc9979545a4ecd29a809801f5d8fd22a5550ad74ce51bdaacd411e3bde4033908c968fa03d61294850b87212c4b94777e6bc39c6
7
+ data.tar.gz: 411ae02f4371da4f90cbb902cb1aca02ad4a7ca1a8d0e6a11b65d8484310e29ee1c1764a9d47f378b32281d7526107611a80a8936a08a8fe525dfd040dd3cca8
@@ -267,6 +267,9 @@ class Morpheus::Cli::CloudFoldersCommand
267
267
  group_access_all = nil
268
268
  group_access_list = nil
269
269
  group_defaults_list = nil
270
+ plan_access_all = nil
271
+ plan_access_list = nil
272
+ plan_defaults_list = nil
270
273
  optparse = Morpheus::Cli::OptionParser.new do |opts|
271
274
  opts.banner = subcommand_usage("[cloud] [folder] [options]")
272
275
  opts.on( '-c', '--cloud CLOUD', "Cloud Name or ID" ) do |val|
@@ -283,13 +286,30 @@ class Morpheus::Cli::CloudFoldersCommand
283
286
  group_access_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
284
287
  end
285
288
  end
286
- # opts.on('--group-defaults LIST', Array, "Group Default Selection, comma separated list of group IDs") do |list|
287
- # if list.size == 1 && list[0] == 'null' # hacky way to clear it
288
- # group_defaults_list = []
289
- # else
290
- # group_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
291
- # end
292
- # end
289
+ opts.on('--group-defaults LIST', Array, "Group Default Selection, comma separated list of group IDs") do |list|
290
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
291
+ group_defaults_list = []
292
+ else
293
+ group_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
294
+ end
295
+ end
296
+ opts.on('--plan-access-all [on|off]', String, "Toggle Access for all plans.") do |val|
297
+ plan_access_all = val.to_s == 'on' || val.to_s == 'true' || val.to_s == ''
298
+ end
299
+ opts.on('--plan-access LIST', Array, "Plan Access, comma separated list of plan IDs.") do |list|
300
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
301
+ plan_access_list = []
302
+ else
303
+ plan_access_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
304
+ end
305
+ end
306
+ opts.on('--plan-defaults LIST', Array, "Plan Default Selection, comma separated list of plan IDs") do |list|
307
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
308
+ plan_defaults_list = []
309
+ else
310
+ plan_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
311
+ end
312
+ end
293
313
  opts.on('--tenants LIST', Array, "Tenant Access, comma separated list of account IDs") do |list|
294
314
  if list.size == 1 && list[0] == 'null' # hacky way to clear it
295
315
  options['tenants'] = []
@@ -366,6 +386,22 @@ class Morpheus::Cli::CloudFoldersCommand
366
386
  end
367
387
  end
368
388
 
389
+ # Service Plan Access
390
+ if plan_access_all != nil
391
+ payload['resourcePermissions'] ||= {}
392
+ payload['resourcePermissions']['allPlans'] = plan_access_all
393
+ end
394
+ if plan_access_list != nil
395
+ payload['resourcePermissions'] ||= {}
396
+ payload['resourcePermissions']['plans'] = plan_access_list.collect do |site_id|
397
+ site = {"id" => site_id.to_i}
398
+ if plan_defaults_list && plan_defaults_list.include?(site_id)
399
+ site["default"] = true
400
+ end
401
+ site
402
+ end
403
+ end
404
+
369
405
  # Tenants
370
406
  if options['tenants']
371
407
  payload['tenantPermissions'] = {}
@@ -193,7 +193,7 @@ class Morpheus::Cli::CloudResourcePoolsCommand
193
193
  }
194
194
  print_description_list(description_cols, resource_pool)
195
195
 
196
- if resource_pool['resourcePermission'].nil?
196
+ if resource_pool['resourcePermission'].nil?
197
197
  #print "\n", "No group access found", "\n"
198
198
  else
199
199
  print_h2 "Group Access"
@@ -267,6 +267,9 @@ class Morpheus::Cli::CloudResourcePoolsCommand
267
267
  group_access_all = nil
268
268
  group_access_list = nil
269
269
  group_defaults_list = nil
270
+ plan_access_all = nil
271
+ plan_access_list = nil
272
+ plan_defaults_list = nil
270
273
  optparse = Morpheus::Cli::OptionParser.new do |opts|
271
274
  opts.banner = subcommand_usage("[cloud] [pool] [options]")
272
275
  opts.on( '-c', '--cloud CLOUD', "Cloud Name or ID" ) do |val|
@@ -286,13 +289,30 @@ class Morpheus::Cli::CloudResourcePoolsCommand
286
289
  group_access_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
287
290
  end
288
291
  end
289
- # opts.on('--group-defaults LIST', Array, "Group Default Selection, comma separated list of group IDs") do |list|
290
- # if list.size == 1 && list[0] == 'null' # hacky way to clear it
291
- # group_defaults_list = []
292
- # else
293
- # group_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
294
- # end
295
- # end
292
+ opts.on('--group-defaults LIST', Array, "Group Default Selection, comma separated list of group IDs") do |list|
293
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
294
+ group_defaults_list = []
295
+ else
296
+ group_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
297
+ end
298
+ end
299
+ opts.on('--plan-access-all [on|off]', String, "Toggle Access for all plans.") do |val|
300
+ plan_access_all = val.to_s == 'on' || val.to_s == 'true' || val.to_s == ''
301
+ end
302
+ opts.on('--plan-access LIST', Array, "Plan Access, comma separated list of plan IDs.") do |list|
303
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
304
+ plan_access_list = []
305
+ else
306
+ plan_access_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
307
+ end
308
+ end
309
+ opts.on('--plan-defaults LIST', Array, "Plan Default Selection, comma separated list of plan IDs") do |list|
310
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
311
+ plan_defaults_list = []
312
+ else
313
+ plan_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
314
+ end
315
+ end
296
316
  opts.on('--tenants LIST', Array, "Tenant Access, comma separated list of account IDs") do |list|
297
317
  if list.size == 1 && list[0] == 'null' # hacky way to clear it
298
318
  options['tenants'] = []
@@ -365,6 +385,12 @@ class Morpheus::Cli::CloudResourcePoolsCommand
365
385
  if group_access_all != nil
366
386
  payload['resourcePermissions'] ||= {}
367
387
  payload['resourcePermissions']['all'] = group_access_all
388
+ else
389
+ # default to all
390
+ if payload['resourcePermissions'].nil? || payload['resourcePermissions']['all'].nil?
391
+ payload['resourcePermissions'] ||= {}
392
+ payload['resourcePermissions']['all'] = true
393
+ end
368
394
  end
369
395
  if group_access_list != nil
370
396
  payload['resourcePermissions'] ||= {}
@@ -377,6 +403,28 @@ class Morpheus::Cli::CloudResourcePoolsCommand
377
403
  end
378
404
  end
379
405
 
406
+ # Service Plan Access
407
+ if plan_access_all != nil
408
+ payload['resourcePermissions'] ||= {}
409
+ payload['resourcePermissions']['allPlans'] = plan_access_all
410
+ else
411
+ # default to all
412
+ if payload['resourcePermissions'].nil? || payload['resourcePermissions']['allPlans'].nil?
413
+ payload['resourcePermissions'] ||= {}
414
+ payload['resourcePermissions']['allPlans'] = true
415
+ end
416
+ end
417
+ if plan_access_list != nil
418
+ payload['resourcePermissions'] ||= {}
419
+ payload['resourcePermissions']['plans'] = plan_access_list.collect do |site_id|
420
+ site = {"id" => site_id.to_i}
421
+ if plan_defaults_list && plan_defaults_list.include?(site_id)
422
+ site["default"] = true
423
+ end
424
+ site
425
+ end
426
+ end
427
+
380
428
  # Tenants
381
429
  if options['tenants']
382
430
  payload['tenantPermissions'] = {}
@@ -448,6 +496,9 @@ class Morpheus::Cli::CloudResourcePoolsCommand
448
496
  group_access_all = nil
449
497
  group_access_list = nil
450
498
  group_defaults_list = nil
499
+ plan_access_all = nil
500
+ plan_access_list = nil
501
+ plan_defaults_list = nil
451
502
  optparse = Morpheus::Cli::OptionParser.new do |opts|
452
503
  opts.banner = subcommand_usage("[cloud] [pool] [options]")
453
504
  opts.on( '-c', '--cloud CLOUD', "Cloud Name or ID" ) do |val|
@@ -464,13 +515,30 @@ class Morpheus::Cli::CloudResourcePoolsCommand
464
515
  group_access_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
465
516
  end
466
517
  end
467
- # opts.on('--group-defaults LIST', Array, "Group Default Selection, comma separated list of group IDs") do |list|
468
- # if list.size == 1 && list[0] == 'null' # hacky way to clear it
469
- # group_defaults_list = []
470
- # else
471
- # group_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
472
- # end
473
- # end
518
+ opts.on('--group-defaults LIST', Array, "Group Default Selection, comma separated list of group IDs") do |list|
519
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
520
+ group_defaults_list = []
521
+ else
522
+ group_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
523
+ end
524
+ end
525
+ opts.on('--plan-access-all [on|off]', String, "Toggle Access for all plans.") do |val|
526
+ plan_access_all = val.to_s == 'on' || val.to_s == 'true' || val.to_s == ''
527
+ end
528
+ opts.on('--plan-access LIST', Array, "Plan Access, comma separated list of plan IDs.") do |list|
529
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
530
+ plan_access_list = []
531
+ else
532
+ plan_access_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
533
+ end
534
+ end
535
+ opts.on('--plan-defaults LIST', Array, "Plan Default Selection, comma separated list of plan IDs") do |list|
536
+ if list.size == 1 && list[0] == 'null' # hacky way to clear it
537
+ plan_defaults_list = []
538
+ else
539
+ plan_defaults_list = list.collect {|it| it.to_s.strip.empty? ? nil : it.to_s.strip }.compact.uniq
540
+ end
541
+ end
474
542
  opts.on('--tenants LIST', Array, "Tenant Access, comma separated list of account IDs") do |list|
475
543
  if list.size == 1 && list[0] == 'null' # hacky way to clear it
476
544
  options['tenants'] = []
@@ -547,6 +615,22 @@ class Morpheus::Cli::CloudResourcePoolsCommand
547
615
  end
548
616
  end
549
617
 
618
+ # Service Plan Access
619
+ if plan_access_all != nil
620
+ payload['resourcePermissions'] ||= {}
621
+ payload['resourcePermissions']['allPlans'] = plan_access_all
622
+ end
623
+ if plan_access_list != nil
624
+ payload['resourcePermissions'] ||= {}
625
+ payload['resourcePermissions']['plans'] = plan_access_list.collect do |site_id|
626
+ site = {"id" => site_id.to_i}
627
+ if plan_defaults_list && plan_defaults_list.include?(site_id)
628
+ site["default"] = true
629
+ end
630
+ site
631
+ end
632
+ end
633
+
550
634
  # Tenants
551
635
  if options['tenants']
552
636
  payload['tenantPermissions'] = {}
@@ -1,6 +1,6 @@
1
1
 
2
2
  module Morpheus
3
3
  module Cli
4
- VERSION = "4.1.0"
4
+ VERSION = "4.1.1"
5
5
  end
6
6
  end
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.0
4
+ version: 4.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Estes