opennebula-cli 5.12.13 → 5.13.80.pre

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 (102) hide show
  1. checksums.yaml +5 -5
  2. data/bin/oneacct +5 -14
  3. data/bin/oneacl +4 -15
  4. data/bin/onecluster +6 -17
  5. data/bin/onedatastore +6 -17
  6. data/bin/oneflow +81 -23
  7. data/bin/oneflow-template +51 -27
  8. data/bin/onegroup +6 -17
  9. data/bin/onehook +6 -17
  10. data/bin/onehost +4 -15
  11. data/bin/oneimage +95 -18
  12. data/bin/onemarket +6 -17
  13. data/bin/onemarketapp +113 -20
  14. data/bin/onesecgroup +9 -17
  15. data/bin/oneshowback +14 -20
  16. data/bin/onetemplate +8 -18
  17. data/bin/oneuser +26 -17
  18. data/bin/onevcenter +6 -28
  19. data/bin/onevdc +6 -17
  20. data/bin/onevm +142 -21
  21. data/bin/onevmgroup +9 -17
  22. data/bin/onevnet +4 -15
  23. data/bin/onevntemplate +7 -17
  24. data/bin/onevrouter +6 -17
  25. data/bin/onezone +6 -17
  26. data/lib/cli_helper.rb +7 -10
  27. data/lib/command_parser.rb +1 -1
  28. data/lib/one_helper/oneacct_helper.rb +9 -22
  29. data/lib/one_helper/oneacl_helper.rb +1 -1
  30. data/lib/one_helper/onecluster_helper.rb +1 -1
  31. data/lib/one_helper/onedatastore_helper.rb +11 -1
  32. data/lib/one_helper/oneflow_helper.rb +20 -5
  33. data/lib/one_helper/oneflowtemplate_helper.rb +28 -2
  34. data/lib/one_helper/onegroup_helper.rb +1 -1
  35. data/lib/one_helper/onehook_helper.rb +1 -1
  36. data/lib/one_helper/onehost_helper.rb +1 -5
  37. data/lib/one_helper/oneimage_helper.rb +7 -7
  38. data/lib/one_helper/onemarket_helper.rb +1 -1
  39. data/lib/one_helper/onemarketapp_helper.rb +494 -96
  40. data/lib/one_helper/onequota_helper.rb +1 -1
  41. data/lib/one_helper/onesecgroup_helper.rb +1 -1
  42. data/lib/one_helper/onetemplate_helper.rb +12 -1
  43. data/lib/one_helper/oneuser_helper.rb +11 -3
  44. data/lib/one_helper/onevcenter_helper.rb +176 -146
  45. data/lib/one_helper/onevdc_helper.rb +1 -1
  46. data/lib/one_helper/onevm_helper.rb +9 -9
  47. data/lib/one_helper/onevmgroup_helper.rb +1 -1
  48. data/lib/one_helper/onevnet_helper.rb +1 -1
  49. data/lib/one_helper/onevntemplate_helper.rb +1 -1
  50. data/lib/one_helper/onevrouter_helper.rb +1 -20
  51. data/lib/one_helper/onezone_helper.rb +12 -1
  52. data/lib/one_helper.rb +398 -37
  53. data/share/schemas/xsd/acct.xsd +179 -0
  54. data/share/schemas/xsd/acl_pool.xsd +22 -0
  55. data/share/schemas/xsd/api_info.xsd +43 -0
  56. data/share/schemas/xsd/cluster.xsd +34 -0
  57. data/share/schemas/xsd/cluster_pool.xsd +12 -0
  58. data/share/schemas/xsd/datastore.xsd +67 -0
  59. data/share/schemas/xsd/datastore_pool.xsd +12 -0
  60. data/share/schemas/xsd/document.xsd +42 -0
  61. data/share/schemas/xsd/document_pool.xsd +12 -0
  62. data/share/schemas/xsd/group.xsd +179 -0
  63. data/share/schemas/xsd/group_pool.xsd +194 -0
  64. data/share/schemas/xsd/hook.xsd +59 -0
  65. data/share/schemas/xsd/hook_message_api.xsd +14 -0
  66. data/share/schemas/xsd/hook_message_retry.xsd +12 -0
  67. data/share/schemas/xsd/hook_message_state.xsd +25 -0
  68. data/share/schemas/xsd/hook_pool.xsd +12 -0
  69. data/share/schemas/xsd/host.xsd +164 -0
  70. data/share/schemas/xsd/host_pool.xsd +12 -0
  71. data/share/schemas/xsd/image.xsd +123 -0
  72. data/share/schemas/xsd/image_pool.xsd +12 -0
  73. data/share/schemas/xsd/index.xsd +49 -0
  74. data/share/schemas/xsd/marketplace.xsd +44 -0
  75. data/share/schemas/xsd/marketplace_pool.xsd +12 -0
  76. data/share/schemas/xsd/marketplaceapp.xsd +56 -0
  77. data/share/schemas/xsd/marketplaceapp_pool.xsd +12 -0
  78. data/share/schemas/xsd/opennebula_configuration.xsd +412 -0
  79. data/share/schemas/xsd/raftstatus.xsd +18 -0
  80. data/share/schemas/xsd/security_group.xsd +74 -0
  81. data/share/schemas/xsd/security_group_pool.xsd +12 -0
  82. data/share/schemas/xsd/showback.xsd +29 -0
  83. data/share/schemas/xsd/user.xsd +186 -0
  84. data/share/schemas/xsd/user_pool.xsd +201 -0
  85. data/share/schemas/xsd/vdc.xsd +76 -0
  86. data/share/schemas/xsd/vdc_pool.xsd +12 -0
  87. data/share/schemas/xsd/vm.xsd +251 -0
  88. data/share/schemas/xsd/vm_group.xsd +59 -0
  89. data/share/schemas/xsd/vm_group_pool.xsd +12 -0
  90. data/share/schemas/xsd/vm_pool.xsd +114 -0
  91. data/share/schemas/xsd/vmtemplate.xsd +52 -0
  92. data/share/schemas/xsd/vmtemplate_pool.xsd +12 -0
  93. data/share/schemas/xsd/vnet.xsd +137 -0
  94. data/share/schemas/xsd/vnet_pool.xsd +85 -0
  95. data/share/schemas/xsd/vntemplate.xsd +50 -0
  96. data/share/schemas/xsd/vntemplate_pool.xsd +12 -0
  97. data/share/schemas/xsd/vrouter.xsd +49 -0
  98. data/share/schemas/xsd/vrouter_pool.xsd +12 -0
  99. data/share/schemas/xsd/zone.xsd +40 -0
  100. data/share/schemas/xsd/zone_pool.xsd +36 -0
  101. metadata +92 -30
  102. data/lib/one_helper/oneprovision_helper.rb +0 -362
data/bin/oneuser CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,25 +26,14 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -82,8 +71,8 @@ CommandParser::CmdParser.new(ARGV) do
82
71
  ########################################################################
83
72
  set :option, CommandParser::OPTIONS + OpenNebulaHelper::CLIENT_OPTIONS
84
73
 
85
- list_options = CLIHelper::OPTIONS
86
- list_options << OpenNebulaHelper::XML
74
+ list_options = CLIHelper::OPTIONS
75
+ list_options += OpenNebulaHelper::FORMAT
87
76
  list_options << OpenNebulaHelper::NUMERIC
88
77
  list_options << OpenNebulaHelper::DESCRIBE
89
78
 
@@ -573,7 +562,7 @@ CommandParser::CmdParser.new(ARGV) do
573
562
  EOT
574
563
 
575
564
  command :show, show_desc, [:userid, nil],
576
- :options => OpenNebulaHelper::XML do
565
+ :options => OpenNebulaHelper::FORMAT do
577
566
  user = args[0] || OpenNebula::User::SELF
578
567
  helper.show_resource(user, options)
579
568
  end
@@ -815,4 +804,24 @@ CommandParser::CmdParser.new(ARGV) do
815
804
  user.login(username, '', 0)
816
805
  end
817
806
  end
807
+
808
+ enable_desc = <<-EOT.unindent
809
+ Enables the given User
810
+ EOT
811
+
812
+ command :enable, enable_desc, [:range, :userid_list] do
813
+ helper.perform_actions(args[0], options, 'enabled') do |user|
814
+ user.enable
815
+ end
816
+ end
817
+
818
+ disable_desc = <<-EOT.unindent
819
+ Disables the given User
820
+ EOT
821
+
822
+ command :disable, disable_desc, [:range, :userid_list] do
823
+ helper.perform_actions(args[0], options, 'disabled') do |user|
824
+ user.disable
825
+ end
826
+ end
818
827
  end
data/bin/onevcenter CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -28,25 +28,14 @@ else
28
28
  REMOTES_LOCATION = ONE_LOCATION + '/var/remotes/'
29
29
  end
30
30
 
31
- # %%RUBYGEMS_SETUP_BEGIN%%
32
31
  if File.directory?(GEMS_LOCATION)
33
32
  real_gems_path = File.realpath(GEMS_LOCATION)
34
33
  if !defined?(Gem) || Gem.path != [real_gems_path]
35
34
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
36
-
37
- # Suppress warnings from Rubygems
38
- # https://github.com/OpenNebula/one/issues/5379
39
- begin
40
- verb = $VERBOSE
41
- $VERBOSE = nil
42
- require 'rubygems'
43
- Gem.use_paths(real_gems_path)
44
- ensure
45
- $VERBOSE = verb
46
- end
35
+ require 'rubygems'
36
+ Gem.use_paths(real_gems_path)
47
37
  end
48
38
  end
49
- # %%RUBYGEMS_SETUP_END%%
50
39
 
51
40
  $LOAD_PATH << RUBY_LIB_LOCATION
52
41
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -271,21 +260,10 @@ CommandParser::CmdParser.new(ARGV) do
271
260
  importer = VCenterDriver::VcImporter.new_child(helper.client,
272
261
  vi_client,
273
262
  options[:object])
263
+ importer.retrieve_resources(helper.parse_opts(options))
264
+ indexes = importer.get_indexes(args.first)
274
265
 
275
- if options[:object] == "networks" && !args.first.nil?
276
- indexes = args.first
277
- else
278
- importer.retrieve_resources(helper.parse_opts(options))
279
- indexes = importer.get_indexes(args.first)
280
- end
281
-
282
- if indexes.nil?
283
- raise "Could not get any unimported #{options[:object]}"\
284
- " resources info in host: #{options[:host]} with"\
285
- " this input: #{args.first}"
286
- end
287
-
288
- importer.process_import(indexes, options)
266
+ importer.process_import(indexes)
289
267
 
290
268
  importer.stdout
291
269
  rescue StandardError => e
data/bin/onevdc CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,25 +26,14 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -67,8 +56,8 @@ CommandParser::CmdParser.new(ARGV) do
67
56
  ########################################################################
68
57
  set :option, CommandParser::OPTIONS + OpenNebulaHelper::CLIENT_OPTIONS
69
58
 
70
- list_options = CLIHelper::OPTIONS
71
- list_options << OpenNebulaHelper::XML
59
+ list_options = CLIHelper::OPTIONS
60
+ list_options += OpenNebulaHelper::FORMAT
72
61
  list_options << OpenNebulaHelper::NUMERIC
73
62
  list_options << OpenNebulaHelper::DESCRIBE
74
63
 
@@ -311,7 +300,7 @@ CommandParser::CmdParser.new(ARGV) do
311
300
  Shows information for the given VDC
312
301
  EOT
313
302
 
314
- command :show, show_desc, :vdcid, :options => OpenNebulaHelper::XML do
303
+ command :show, show_desc, :vdcid, :options => OpenNebulaHelper::FORMAT do
315
304
  helper.show_resource(args[0], options)
316
305
  end
317
306
  end
data/bin/onevm CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,31 +26,22 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
51
40
 
52
41
  require 'command_parser'
53
42
  require 'one_helper/onevm_helper'
43
+ require 'one_helper/onedatastore_helper'
44
+ require 'opennebula/virtual_machine_ext'
54
45
 
55
46
  CommandParser::CmdParser.new(ARGV) do
56
47
  usage '`onevm` <command> [<args>] [<options>]'
@@ -190,6 +181,32 @@ CommandParser::CmdParser.new(ARGV) do
190
181
  :description => 'lock all actions'
191
182
  }
192
183
 
184
+ LOGGER = {
185
+ :name => 'logger',
186
+ :large => '--logger logger',
187
+ :format => String,
188
+ :description => 'Set logger to STDOUT or FILE'
189
+ }
190
+
191
+ KEEP = {
192
+ :name => 'keep',
193
+ :large => '--keep-backup',
194
+ :description => 'Keep previous backup when creating a new one'
195
+ }
196
+
197
+ ONESHOT = {
198
+ :name => 'oneshot',
199
+ :large => '--oneshot',
200
+ :description => 'Take an snapshot of the VM without saving backup info'
201
+ }
202
+
203
+ MARKET = {
204
+ :name => 'market',
205
+ :large => '--market market_id',
206
+ :format => Integer,
207
+ :description => 'Market to save oneshot'
208
+ }
209
+
193
210
  ########################################################################
194
211
  # Global Options
195
212
  ########################################################################
@@ -1166,7 +1183,7 @@ CommandParser::CmdParser.new(ARGV) do
1166
1183
  EOT
1167
1184
 
1168
1185
  command :show, show_desc, :vmid,
1169
- :options => [OpenNebulaHelper::XML,
1186
+ :options => [OpenNebulaHelper::FORMAT,
1170
1187
  OpenNebulaHelper::DECRYPT,
1171
1188
  OneVMHelper::ALL_TEMPLATE] do
1172
1189
  helper.show_resource(args[0], options)
@@ -1224,7 +1241,11 @@ CommandParser::CmdParser.new(ARGV) do
1224
1241
 
1225
1242
  command :save, save_desc, :vmid, :name, :options => [PERSISTENT] do
1226
1243
  helper.perform_action(args[0], options, 'Saving VM') do |vm|
1227
- res = vm.save_as_template(args[1], options[:persistent])
1244
+ vm.extend(VirtualMachineExt)
1245
+
1246
+ res = vm.save_as_template(args[1],
1247
+ '',
1248
+ :persistent => options[:persistent])
1228
1249
 
1229
1250
  if !OpenNebula.is_error?(res)
1230
1251
  puts "Template ID: #{res}"
@@ -1235,15 +1256,16 @@ CommandParser::CmdParser.new(ARGV) do
1235
1256
  end
1236
1257
 
1237
1258
  updateconf_desc = <<-EOT.unindent
1238
- Updates the configuration of a VM. The VM cannot be in an active (running)
1239
- state, valid states are: pending, failure, poweroff, undeploy, hold or
1240
- cloning.
1259
+ Updates the configuration of a VM. Valid states are: running, pending,
1260
+ failure, poweroff, undeploy, hold or cloning.
1261
+ In running state only changes in CONTEXT take effect immediately,
1262
+ other values may need a VM restart.
1241
1263
 
1242
1264
  This command accepts a template file or opens an editor, the full list of
1243
1265
  configuration attributes are:
1244
1266
 
1245
- OS = ["ARCH", "MACHINE", "KERNEL", "INITRD", "BOOTLOADER", "BOOT"]
1246
- FEATURES = ["ACPI", "PAE", "APIC", "LOCALTIME", "HYPERV", "GUEST_AGENT"]
1267
+ OS = ["ARCH", "MACHINE", "KERNEL", "INITRD", "BOOTLOADER", "BOOT", "UUID"]
1268
+ FEATURES = ["ACPI", "PAE", "APIC", "LOCALTIME", "HYPERV", "GUEST_AGENT", "IOTHREADS"]
1247
1269
  INPUT = ["TYPE", "BUS"]
1248
1270
  GRAPHICS = ["TYPE", "LISTEN", "PASSWD", "KEYMAP" ]
1249
1271
  RAW = ["DATA", "DATA_VMX", "TYPE"]
@@ -1397,6 +1419,105 @@ CommandParser::CmdParser.new(ARGV) do
1397
1419
  0
1398
1420
  end
1399
1421
 
1422
+ backup_vm_desc = <<-EOT.unindent
1423
+ Creates a VM backup and stores it in the marketplace
1424
+ EOT
1425
+
1426
+ command :backup,
1427
+ backup_vm_desc,
1428
+ :vmid,
1429
+ :options => [LOGGER, KEEP, ONESHOT, MARKET] do
1430
+ require 'logger'
1431
+
1432
+ if options.key?(:oneshot) && !options.key?(:market)
1433
+ STDERR.puts 'ERROR: no market given'
1434
+ exit(-1)
1435
+ end
1436
+
1437
+ helper.perform_action(args[0], options, 'Backup') do |vm|
1438
+ vm.extend(OpenNebula::VirtualMachineExt)
1439
+
1440
+ # If logger is specified use it, if not use STDOUT
1441
+ options[:logger].nil? ? log_to = STDOUT : log_to = options[:logger]
1442
+
1443
+ # Read user options
1444
+ keep = options.key?(:keep)
1445
+ logger = Logger.new(log_to)
1446
+ format = '%Y-%m-%d %H:%M:%S'
1447
+
1448
+ logger.formatter = proc do |severity, datetime, _p, msg|
1449
+ "#{datetime.strftime(format)} #{severity.ljust(5)} : #{msg}\n"
1450
+ end
1451
+
1452
+ if options.key?(:oneshot)
1453
+ binfo = {}
1454
+ binfo[:name] = "VM #{vm.id} BACKUP - " \
1455
+ "#{Time.now.strftime('%Y%m%d_%k%M')}"
1456
+ binfo[:freq] = 1
1457
+ binfo[:last] = Time.now.to_i - 100
1458
+ binfo[:market] = options[:market]
1459
+ end
1460
+
1461
+ begin
1462
+ rc = vm.backup(keep, logger, binfo)
1463
+
1464
+ if OpenNebula.is_error?(rc)
1465
+ STDERR.puts rc.message
1466
+ exit(-1)
1467
+ else
1468
+ 0
1469
+ end
1470
+ rescue StandardError => e
1471
+ STDERR.puts e
1472
+ exit(-1)
1473
+ end
1474
+ end
1475
+ end
1476
+
1477
+ restore_vm_desc = <<-EOT.unindent
1478
+ Restores a VM from a previous backup
1479
+ EOT
1480
+
1481
+ command :restore,
1482
+ restore_vm_desc,
1483
+ :vmid,
1484
+ :options => [OneDatastoreHelper::DATASTORE, LOGGER] do
1485
+ require 'logger'
1486
+
1487
+ unless options[:datastore]
1488
+ STDERR.puts 'ERROR: no datastore given'
1489
+ exit(-1)
1490
+ end
1491
+
1492
+ helper.perform_action(args[0], options, 'Restore') do |vm|
1493
+ vm.extend(OpenNebula::VirtualMachineExt)
1494
+
1495
+ # If logger is specified use it, if not use STDOUT
1496
+ options[:logger].nil? ? log_to = STDOUT : log_to = options[:logger]
1497
+ logger = Logger.new(log_to)
1498
+ format = '%Y-%m-%d %H:%M:%S'
1499
+
1500
+ logger.formatter = proc do |severity, datetime, _p, msg|
1501
+ "#{datetime.strftime(format)} #{severity.ljust(5)} : #{msg}\n"
1502
+ end
1503
+
1504
+ begin
1505
+ rc = vm.restore(options[:datastore], logger)
1506
+
1507
+ if OpenNebula.is_error?(rc)
1508
+ STDERR.puts rc.message
1509
+ exit(-1)
1510
+ else
1511
+ puts "ID: #{rc}"
1512
+ 0
1513
+ end
1514
+ rescue StandardError => e
1515
+ STDERR.puts e
1516
+ exit(-1)
1517
+ end
1518
+ end
1519
+ end
1520
+
1400
1521
  # Deprecated commands
1401
1522
 
1402
1523
  deprecated_command(:shutdown, 'terminate')
data/bin/onevmgroup CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,25 +26,14 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -91,8 +80,8 @@ CommandParser::CmdParser.new(ARGV) do
91
80
  ########################################################################
92
81
  set :option, CommandParser::OPTIONS + OpenNebulaHelper::CLIENT_OPTIONS
93
82
 
94
- list_options = CLIHelper::OPTIONS
95
- list_options << OpenNebulaHelper::XML
83
+ list_options = CLIHelper::OPTIONS
84
+ list_options += OpenNebulaHelper::FORMAT
96
85
  list_options << OpenNebulaHelper::NUMERIC
97
86
  list_options << OpenNebulaHelper::DESCRIBE
98
87
 
@@ -162,7 +151,10 @@ CommandParser::CmdParser.new(ARGV) do
162
151
  Shows information for the given VM Group
163
152
  EOT
164
153
 
165
- command :show, show_desc, :vmgroupid, :options => OpenNebulaHelper::XML do
154
+ command :show,
155
+ show_desc,
156
+ :vmgroupid,
157
+ :options => OpenNebulaHelper::FORMAT do
166
158
  helper.show_resource(args[0], options)
167
159
  end
168
160
 
data/bin/onevnet CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,25 +26,14 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -334,7 +323,7 @@ CommandParser::CmdParser.new(ARGV) do
334
323
  EOT
335
324
 
336
325
  command :show, show_desc, :vnetid,
337
- :options => [OpenNebulaHelper::XML,
326
+ :options => [OpenNebulaHelper::FORMAT,
338
327
  OpenNebulaHelper::DECRYPT,
339
328
  OneVNetHelper::SHOW_AR] do
340
329
  helper.show_resource(args[0], options)
data/bin/onevntemplate CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,25 +26,14 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -92,8 +81,8 @@ CommandParser::CmdParser.new(ARGV) do
92
81
  ########################################################################
93
82
  set :option, CommandParser::OPTIONS + OpenNebulaHelper::CLIENT_OPTIONS
94
83
 
95
- list_options = CLIHelper::OPTIONS
96
- list_options << OpenNebulaHelper::XML
84
+ list_options = CLIHelper::OPTIONS
85
+ list_options += OpenNebulaHelper::FORMAT
97
86
  list_options << OpenNebulaHelper::NUMERIC
98
87
  list_options << OpenNebulaHelper::DESCRIBE
99
88
 
@@ -327,7 +316,8 @@ CommandParser::CmdParser.new(ARGV) do
327
316
  EOT
328
317
 
329
318
  command :show, show_desc, :templateid,
330
- :options => [OpenNebulaHelper::XML, OneTemplateHelper::EXTENDED] do
319
+ :options => [OpenNebulaHelper::FORMAT,
320
+ OneTemplateHelper::EXTENDED] do
331
321
  helper.show_resource(args[0], options)
332
322
  end
333
323
 
data/bin/onevrouter CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  # -------------------------------------------------------------------------- #
4
- # Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
4
+ # Copyright 2002-2021, OpenNebula Project, OpenNebula Systems #
5
5
  # #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License"); you may #
7
7
  # not use this file except in compliance with the License. You may obtain #
@@ -26,25 +26,14 @@ else
26
26
  GEMS_LOCATION = ONE_LOCATION + '/share/gems'
27
27
  end
28
28
 
29
- # %%RUBYGEMS_SETUP_BEGIN%%
30
29
  if File.directory?(GEMS_LOCATION)
31
30
  real_gems_path = File.realpath(GEMS_LOCATION)
32
31
  if !defined?(Gem) || Gem.path != [real_gems_path]
33
32
  $LOAD_PATH.reject! {|l| l =~ /vendor_ruby/ }
34
-
35
- # Suppress warnings from Rubygems
36
- # https://github.com/OpenNebula/one/issues/5379
37
- begin
38
- verb = $VERBOSE
39
- $VERBOSE = nil
40
- require 'rubygems'
41
- Gem.use_paths(real_gems_path)
42
- ensure
43
- $VERBOSE = verb
44
- end
33
+ require 'rubygems'
34
+ Gem.use_paths(real_gems_path)
45
35
  end
46
36
  end
47
- # %%RUBYGEMS_SETUP_END%%
48
37
 
49
38
  $LOAD_PATH << RUBY_LIB_LOCATION
50
39
  $LOAD_PATH << RUBY_LIB_LOCATION + '/cli'
@@ -93,8 +82,8 @@ CommandParser::CmdParser.new(ARGV) do
93
82
  ########################################################################
94
83
  set :option, CommandParser::OPTIONS + OpenNebulaHelper::CLIENT_OPTIONS
95
84
 
96
- list_options = CLIHelper::OPTIONS
97
- list_options << OpenNebulaHelper::XML
85
+ list_options = CLIHelper::OPTIONS
86
+ list_options += OpenNebulaHelper::FORMAT
98
87
  list_options << OpenNebulaHelper::NUMERIC
99
88
  list_options << OpenNebulaHelper::DESCRIBE
100
89
 
@@ -353,7 +342,7 @@ CommandParser::CmdParser.new(ARGV) do
353
342
  EOT
354
343
 
355
344
  command :show, show_desc, :vrouterid,
356
- :options => [OpenNebulaHelper::XML, OneVMHelper::ALL_TEMPLATE] do
345
+ :options => [OpenNebulaHelper::FORMAT, OneVMHelper::ALL_TEMPLATE] do
357
346
  helper.show_resource(args[0], options)
358
347
  end
359
348