opennebula-cli 6.6.2 → 6.7.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.
- checksums.yaml +4 -4
 - data/bin/oneacl +1 -1
 - data/bin/onebackupjob +373 -0
 - data/bin/onecluster +1 -1
 - data/bin/onedatastore +7 -4
 - data/bin/oneflow-template +24 -6
 - data/bin/onegroup +1 -1
 - data/bin/onehook +1 -1
 - data/bin/onehost +1 -1
 - data/bin/oneimage +9 -4
 - data/bin/onemarket +6 -4
 - data/bin/onemarketapp +6 -2
 - data/bin/onesecgroup +1 -1
 - data/bin/onetemplate +16 -9
 - data/bin/oneuser +1 -1
 - data/bin/onevdc +1 -1
 - data/bin/onevm +118 -152
 - data/bin/onevmgroup +65 -2
 - data/bin/onevnet +7 -4
 - data/bin/onevntemplate +1 -1
 - data/bin/onevrouter +22 -16
 - data/bin/onezone +1 -1
 - data/lib/command_parser.rb +2 -9
 - data/lib/one_helper/oneacl_helper.rb +6 -4
 - data/lib/one_helper/onebackupjob_helper.rb +284 -0
 - data/lib/one_helper/onevm_helper.rb +42 -230
 - data/lib/one_helper/onevmgroup_helper.rb +15 -0
 - data/lib/one_helper.rb +622 -325
 - data/share/schemas/xsd/acct.xsd +2 -19
 - data/share/schemas/xsd/backupjob.xsd +42 -0
 - data/share/schemas/xsd/backupjob_pool.xsd +12 -0
 - data/share/schemas/xsd/index.xsd +3 -0
 - data/share/schemas/xsd/opennebula_configuration.xsd +3 -0
 - data/share/schemas/xsd/shared.xsd +46 -0
 - data/share/schemas/xsd/vm.xsd +18 -47
 - data/share/schemas/xsd/vm_group.xsd +1 -0
 - data/share/schemas/xsd/vm_pool.xsd +1 -0
 - metadata +12 -6
 
    
        data/bin/onetemplate
    CHANGED
    
    | 
         @@ -149,6 +149,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       149 
149 
     | 
    
         | 
| 
       150 
150 
     | 
    
         
             
                        onetemplate create vm_description.tmpl
         
     | 
| 
       151 
151 
     | 
    
         | 
| 
      
 152 
     | 
    
         
            +
                        #{OpenNebulaHelper::TEMPLATE_INPUT}
         
     | 
| 
      
 153 
     | 
    
         
            +
             
     | 
| 
       152 
154 
     | 
    
         
             
                      - new VM Template named "arch vm" with a disk and a nic:
         
     | 
| 
       153 
155 
     | 
    
         | 
| 
       154 
156 
     | 
    
         
             
                        onetemplate create --name "arch vm" --memory 128 --cpu 1 \\
         
     | 
| 
         @@ -164,9 +166,10 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       164 
166 
     | 
    
         
             
                command :create, create_desc, [:file, nil], :options =>
         
     | 
| 
       165 
167 
     | 
    
         
             
                        [OneTemplateHelper::VM_NAME] + OpenNebulaHelper::TEMPLATE_OPTIONS +
         
     | 
| 
       166 
168 
     | 
    
         
             
                        [OpenNebulaHelper::DRY] do
         
     | 
| 
       167 
     | 
    
         
            -
                    if args[0]  
     | 
| 
       168 
     | 
    
         
            -
                         
     | 
| 
       169 
     | 
    
         
            -
             
     | 
| 
      
 169 
     | 
    
         
            +
                    if (args[0] || STDIN.wait_readable(0)) &&
         
     | 
| 
      
 170 
     | 
    
         
            +
                        OpenNebulaHelper.create_template_options_used?(options)
         
     | 
| 
      
 171 
     | 
    
         
            +
             
     | 
| 
      
 172 
     | 
    
         
            +
                        STDERR.puts 'You can not use both template file and template creation options.'
         
     | 
| 
       170 
173 
     | 
    
         
             
                        next -1
         
     | 
| 
       171 
174 
     | 
    
         
             
                    end
         
     | 
| 
       172 
175 
     | 
    
         | 
| 
         @@ -174,6 +177,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       174 
177 
     | 
    
         
             
                        begin
         
     | 
| 
       175 
178 
     | 
    
         
             
                            if args[0]
         
     | 
| 
       176 
179 
     | 
    
         
             
                                template = File.read(args[0])
         
     | 
| 
      
 180 
     | 
    
         
            +
                            elsif STDIN.wait_readable(0)
         
     | 
| 
      
 181 
     | 
    
         
            +
                                template = STDIN.read
         
     | 
| 
       177 
182 
     | 
    
         
             
                            else
         
     | 
| 
       178 
183 
     | 
    
         
             
                                res = OpenNebulaHelper.create_template(options)
         
     | 
| 
       179 
184 
     | 
    
         | 
| 
         @@ -248,13 +253,13 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       248 
253 
     | 
    
         
             
                EOT
         
     | 
| 
       249 
254 
     | 
    
         | 
| 
       250 
255 
     | 
    
         
             
                command :instantiate, instantiate_desc, :templateid, [:file, nil],
         
     | 
| 
       251 
     | 
    
         
            -
                        :options => instantiate_options +
         
     | 
| 
       252 
     | 
    
         
            -
                                    OpenNebulaHelper::TEMPLATE_OPTIONS do
         
     | 
| 
      
 256 
     | 
    
         
            +
                        :options => instantiate_options + OpenNebulaHelper::TEMPLATE_OPTIONS do
         
     | 
| 
       253 
257 
     | 
    
         
             
                    exit_code = 0
         
     | 
| 
       254 
258 
     | 
    
         | 
| 
       255 
     | 
    
         
            -
                    if args[1]  
     | 
| 
       256 
     | 
    
         
            -
                         
     | 
| 
       257 
     | 
    
         
            -
             
     | 
| 
      
 259 
     | 
    
         
            +
                    if (args[1] || STDIN.wait_readable(0)) &&
         
     | 
| 
      
 260 
     | 
    
         
            +
                        OpenNebulaHelper.create_template_options_used?(options)
         
     | 
| 
      
 261 
     | 
    
         
            +
             
     | 
| 
      
 262 
     | 
    
         
            +
                        STDERR.puts 'You cannot use both template and template creation options.'
         
     | 
| 
       258 
263 
     | 
    
         
             
                        next -1
         
     | 
| 
       259 
264 
     | 
    
         
             
                    end
         
     | 
| 
       260 
265 
     | 
    
         | 
| 
         @@ -300,6 +305,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       300 
305 
     | 
    
         | 
| 
       301 
306 
     | 
    
         
             
                            if args[1]
         
     | 
| 
       302 
307 
     | 
    
         
             
                                extra_template = File.read(args[1])
         
     | 
| 
      
 308 
     | 
    
         
            +
                            elsif STDIN.wait_readable(0)
         
     | 
| 
      
 309 
     | 
    
         
            +
                                extra_template = STDIN.read
         
     | 
| 
       303 
310 
     | 
    
         
             
                            else
         
     | 
| 
       304 
311 
     | 
    
         
             
                                res = OpenNebulaHelper.create_template(options, t)
         
     | 
| 
       305 
312 
     | 
    
         | 
| 
         @@ -404,7 +411,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       404 
411 
     | 
    
         
             
                end
         
     | 
| 
       405 
412 
     | 
    
         | 
| 
       406 
413 
     | 
    
         
             
                list_desc = <<-EOT.unindent
         
     | 
| 
       407 
     | 
    
         
            -
                    Lists Templates in the pool
         
     | 
| 
      
 414 
     | 
    
         
            +
                    Lists Templates in the pool. #{OneTemplateHelper.list_layout_help}
         
     | 
| 
       408 
415 
     | 
    
         
             
                EOT
         
     | 
| 
       409 
416 
     | 
    
         | 
| 
       410 
417 
     | 
    
         
             
                rename_desc = <<-EOT.unindent
         
     | 
    
        data/bin/oneuser
    CHANGED
    
    
    
        data/bin/onevdc
    CHANGED
    
    
    
        data/bin/onevm
    CHANGED
    
    | 
         @@ -349,7 +349,9 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       349 
349 
     | 
    
         
             
                    number    = options[:multiple] || 1
         
     | 
| 
       350 
350 
     | 
    
         
             
                    exit_code = nil
         
     | 
| 
       351 
351 
     | 
    
         | 
| 
       352 
     | 
    
         
            -
                    if args[0]  
     | 
| 
      
 352 
     | 
    
         
            +
                    if (args[0] || STDIN.wait_readable(0)) &&
         
     | 
| 
      
 353 
     | 
    
         
            +
                        OpenNebulaHelper.create_template_options_used?(options)
         
     | 
| 
      
 354 
     | 
    
         
            +
             
     | 
| 
       353 
355 
     | 
    
         
             
                        STDERR.puts 'You can not use both template file and template'\
         
     | 
| 
       354 
356 
     | 
    
         
             
                                    ' creation options.'
         
     | 
| 
       355 
357 
     | 
    
         
             
                        exit(-1)
         
     | 
| 
         @@ -358,6 +360,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       358 
360 
     | 
    
         
             
                    begin
         
     | 
| 
       359 
361 
     | 
    
         
             
                        if args[0]
         
     | 
| 
       360 
362 
     | 
    
         
             
                            template = File.read(args[0])
         
     | 
| 
      
 363 
     | 
    
         
            +
                        elsif STDIN.wait_readable(0)
         
     | 
| 
      
 364 
     | 
    
         
            +
                            template = STDIN.read
         
     | 
| 
       361 
365 
     | 
    
         
             
                        else
         
     | 
| 
       362 
366 
     | 
    
         
             
                            res = OpenNebulaHelper.create_template(options)
         
     | 
| 
       363 
367 
     | 
    
         | 
| 
         @@ -422,12 +426,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       422 
426 
     | 
    
         
             
                EOT
         
     | 
| 
       423 
427 
     | 
    
         | 
| 
       424 
428 
     | 
    
         
             
                command :hold, hold_desc, [:range, :vmid_list],
         
     | 
| 
       425 
     | 
    
         
            -
                        :options =>  
     | 
| 
       426 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       427 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       428 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       429 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       430 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 429 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       431 
430 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       432 
431 
     | 
    
         
             
                        helper.schedule_actions(args[0], options, @comm_name)
         
     | 
| 
       433 
432 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -444,12 +443,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       444 
443 
     | 
    
         
             
                EOT
         
     | 
| 
       445 
444 
     | 
    
         | 
| 
       446 
445 
     | 
    
         
             
                command :release, release_desc, [:range, :vmid_list],
         
     | 
| 
       447 
     | 
    
         
            -
                        :options =>  
     | 
| 
       448 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       449 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       450 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       451 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       452 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 446 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       453 
447 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       454 
448 
     | 
    
         
             
                        helper.schedule_actions(args[0], options, @comm_name)
         
     | 
| 
       455 
449 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -512,13 +506,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       512 
506 
     | 
    
         
             
                EOT
         
     | 
| 
       513 
507 
     | 
    
         | 
| 
       514 
508 
     | 
    
         
             
                command :terminate, terminate_desc, [:range, :vmid_list],
         
     | 
| 
       515 
     | 
    
         
            -
                        :options =>  
     | 
| 
       516 
     | 
    
         
            -
             
     | 
| 
       517 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       518 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       519 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       520 
     | 
    
         
            -
                                     OneVMHelper::END_TIME,
         
     | 
| 
       521 
     | 
    
         
            -
                                     OneVMHelper::HARD] do
         
     | 
| 
      
 509 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS +
         
     | 
| 
      
 510 
     | 
    
         
            +
                                    [OneVMHelper::HARD] do
         
     | 
| 
       522 
511 
     | 
    
         
             
                    command_name = 'terminate'
         
     | 
| 
       523 
512 
     | 
    
         
             
                    command_name << '-hard' if options[:hard]
         
     | 
| 
       524 
513 
     | 
    
         | 
| 
         @@ -540,13 +529,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       540 
529 
     | 
    
         
             
                EOT
         
     | 
| 
       541 
530 
     | 
    
         | 
| 
       542 
531 
     | 
    
         
             
                command :undeploy, undeploy_desc, [:range, :vmid_list],
         
     | 
| 
       543 
     | 
    
         
            -
                        :options =>  
     | 
| 
       544 
     | 
    
         
            -
             
     | 
| 
       545 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       546 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       547 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       548 
     | 
    
         
            -
                                     OneVMHelper::END_TIME,
         
     | 
| 
       549 
     | 
    
         
            -
                                     OneVMHelper::HARD] do
         
     | 
| 
      
 532 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS +
         
     | 
| 
      
 533 
     | 
    
         
            +
                                    [OneVMHelper::HARD] do
         
     | 
| 
       550 
534 
     | 
    
         
             
                    command_name = 'undeploy'
         
     | 
| 
       551 
535 
     | 
    
         
             
                    command_name << '-hard' if options[:hard]
         
     | 
| 
       552 
536 
     | 
    
         | 
| 
         @@ -567,13 +551,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       567 
551 
     | 
    
         
             
                EOT
         
     | 
| 
       568 
552 
     | 
    
         | 
| 
       569 
553 
     | 
    
         
             
                command :poweroff, poweroff_desc, [:range, :vmid_list],
         
     | 
| 
       570 
     | 
    
         
            -
                        :options =>  
     | 
| 
       571 
     | 
    
         
            -
             
     | 
| 
       572 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       573 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       574 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       575 
     | 
    
         
            -
                                     OneVMHelper::END_TIME,
         
     | 
| 
       576 
     | 
    
         
            -
                                     OneVMHelper::HARD] do
         
     | 
| 
      
 554 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS +
         
     | 
| 
      
 555 
     | 
    
         
            +
                                    [OneVMHelper::HARD] do
         
     | 
| 
       577 
556 
     | 
    
         
             
                    command_name = 'poweroff'
         
     | 
| 
       578 
557 
     | 
    
         
             
                    command_name << '-hard' if options[:hard]
         
     | 
| 
       579 
558 
     | 
    
         | 
| 
         @@ -596,13 +575,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       596 
575 
     | 
    
         
             
                EOT
         
     | 
| 
       597 
576 
     | 
    
         | 
| 
       598 
577 
     | 
    
         
             
                command :reboot, reboot_desc, [:range, :vmid_list],
         
     | 
| 
       599 
     | 
    
         
            -
                        :options =>  
     | 
| 
       600 
     | 
    
         
            -
             
     | 
| 
       601 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       602 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       603 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       604 
     | 
    
         
            -
                                     OneVMHelper::END_TIME,
         
     | 
| 
       605 
     | 
    
         
            -
                                     OneVMHelper::HARD] do
         
     | 
| 
      
 578 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS +
         
     | 
| 
      
 579 
     | 
    
         
            +
                                    [OneVMHelper::HARD] do
         
     | 
| 
       606 
580 
     | 
    
         
             
                    command_name = 'reboot'
         
     | 
| 
       607 
581 
     | 
    
         
             
                    command_name << '-hard' if options[:hard]
         
     | 
| 
       608 
582 
     | 
    
         | 
| 
         @@ -620,6 +594,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       620 
594 
     | 
    
         
             
                    deployment, in a standard installation the Scheduler is in charge
         
     | 
| 
       621 
595 
     | 
    
         
             
                    of this decision
         
     | 
| 
       622 
596 
     | 
    
         | 
| 
      
 597 
     | 
    
         
            +
                    #{OpenNebulaHelper::TEMPLATE_INPUT}
         
     | 
| 
      
 598 
     | 
    
         
            +
             
     | 
| 
       623 
599 
     | 
    
         
             
                    States: PENDING, HOLD, STOPPED, UNDEPLOYED
         
     | 
| 
       624 
600 
     | 
    
         
             
                EOT
         
     | 
| 
       625 
601 
     | 
    
         | 
| 
         @@ -628,7 +604,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       628 
604 
     | 
    
         
             
                        [:range, :vmid_list],
         
     | 
| 
       629 
605 
     | 
    
         
             
                        :hostid,
         
     | 
| 
       630 
606 
     | 
    
         
             
                        [:datastoreid, nil],
         
     | 
| 
       631 
     | 
    
         
            -
                        :options => [ENFORCE,  
     | 
| 
      
 607 
     | 
    
         
            +
                        :options => [ENFORCE, OpenNebulaHelper::FILE] do
         
     | 
| 
       632 
608 
     | 
    
         
             
                    host_id = args[1]
         
     | 
| 
       633 
609 
     | 
    
         
             
                    verbose = "deploying in host #{host_id}"
         
     | 
| 
       634 
610 
     | 
    
         | 
| 
         @@ -639,6 +615,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       639 
615 
     | 
    
         | 
| 
       640 
616 
     | 
    
         
             
                    if options[:file]
         
     | 
| 
       641 
617 
     | 
    
         
             
                        extra_template = File.read(options[:file])
         
     | 
| 
      
 618 
     | 
    
         
            +
                    elsif STDIN.wait_readable(0)
         
     | 
| 
      
 619 
     | 
    
         
            +
                        extra_template = STDIN.read
         
     | 
| 
       642 
620 
     | 
    
         
             
                    end
         
     | 
| 
       643 
621 
     | 
    
         | 
| 
       644 
622 
     | 
    
         
             
                    helper.perform_actions(args[0], options, verbose) do |vm|
         
     | 
| 
         @@ -680,12 +658,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       680 
658 
     | 
    
         
             
                EOT
         
     | 
| 
       681 
659 
     | 
    
         | 
| 
       682 
660 
     | 
    
         
             
                command :stop, stop_desc, [:range, :vmid_list],
         
     | 
| 
       683 
     | 
    
         
            -
                        :options =>  
     | 
| 
       684 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       685 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       686 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       687 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       688 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 661 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       689 
662 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       690 
663 
     | 
    
         
             
                        helper.schedule_actions(args[0], options, @comm_name)
         
     | 
| 
       691 
664 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -705,12 +678,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       705 
678 
     | 
    
         
             
                EOT
         
     | 
| 
       706 
679 
     | 
    
         | 
| 
       707 
680 
     | 
    
         
             
                command :suspend, suspend_desc, [:range, :vmid_list],
         
     | 
| 
       708 
     | 
    
         
            -
                        :options =>  
     | 
| 
       709 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       710 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       711 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       712 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       713 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 681 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       714 
682 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       715 
683 
     | 
    
         
             
                        helper.schedule_actions(args[0], options, @comm_name)
         
     | 
| 
       716 
684 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -727,12 +695,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       727 
695 
     | 
    
         
             
                EOT
         
     | 
| 
       728 
696 
     | 
    
         | 
| 
       729 
697 
     | 
    
         
             
                command :resume, resume_desc, [:range, :vmid_list],
         
     | 
| 
       730 
     | 
    
         
            -
                        :options =>  
     | 
| 
       731 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       732 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       733 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       734 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       735 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 698 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       736 
699 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       737 
700 
     | 
    
         
             
                        helper.schedule_actions(args[0], options, @comm_name)
         
     | 
| 
       738 
701 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -799,25 +762,21 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       799 
762 
     | 
    
         
             
                end
         
     | 
| 
       800 
763 
     | 
    
         | 
| 
       801 
764 
     | 
    
         
             
                disk_attach_desc = <<-EOT.unindent
         
     | 
| 
       802 
     | 
    
         
            -
                    Attaches a disk to a running VM. 
     | 
| 
       803 
     | 
    
         
            -
             
     | 
| 
      
 765 
     | 
    
         
            +
                    Attaches a disk to a running VM.
         
     | 
| 
      
 766 
     | 
    
         
            +
             
     | 
| 
      
 767 
     | 
    
         
            +
                    #{OneVMHelper.template_input_help('DISK')}
         
     | 
| 
       804 
768 
     | 
    
         | 
| 
       805 
769 
     | 
    
         
             
                    States: RUNNING, POWEROFF
         
     | 
| 
       806 
770 
     | 
    
         
             
                EOT
         
     | 
| 
       807 
771 
     | 
    
         | 
| 
       808 
772 
     | 
    
         
             
                command :"disk-attach", disk_attach_desc, :vmid,
         
     | 
| 
       809 
     | 
    
         
            -
                        :options => [ 
     | 
| 
      
 773 
     | 
    
         
            +
                        :options => [OpenNebulaHelper::FILE, OneVMHelper::IMAGE,
         
     | 
| 
       810 
774 
     | 
    
         
             
                                     TARGET, CACHE, DISCARD, PREFIX] do
         
     | 
| 
       811 
     | 
    
         
            -
                    if options[:file].nil? && options[:image].nil?
         
     | 
| 
       812 
     | 
    
         
            -
                        STDERR.puts 'Provide a template file or an image:'
         
     | 
| 
       813 
     | 
    
         
            -
                        STDERR.puts '\t--file  <file>'
         
     | 
| 
       814 
     | 
    
         
            -
                        STDERR.puts '\t--image <image>'
         
     | 
| 
       815 
     | 
    
         
            -
                        exit(-1)
         
     | 
| 
       816 
     | 
    
         
            -
                    end
         
     | 
| 
       817 
     | 
    
         
            -
             
     | 
| 
       818 
775 
     | 
    
         
             
                    if options[:file]
         
     | 
| 
       819 
776 
     | 
    
         
             
                        template = File.read(options[:file])
         
     | 
| 
       820 
     | 
    
         
            -
                     
     | 
| 
      
 777 
     | 
    
         
            +
                    elsif STDIN.wait_readable(0)
         
     | 
| 
      
 778 
     | 
    
         
            +
                        template = STDIN.read
         
     | 
| 
      
 779 
     | 
    
         
            +
                    elsif options[:image]
         
     | 
| 
       821 
780 
     | 
    
         
             
                        image_id = options[:image]
         
     | 
| 
       822 
781 
     | 
    
         
             
                        target   = options[:target]
         
     | 
| 
       823 
782 
     | 
    
         
             
                        prefix   = options[:prefix]
         
     | 
| 
         @@ -839,6 +798,11 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       839 
798 
     | 
    
         
             
                        end
         
     | 
| 
       840 
799 
     | 
    
         | 
| 
       841 
800 
     | 
    
         
             
                        template << ' ]'
         
     | 
| 
      
 801 
     | 
    
         
            +
                    else
         
     | 
| 
      
 802 
     | 
    
         
            +
                        STDERR.puts 'Provide a template or an image:'
         
     | 
| 
      
 803 
     | 
    
         
            +
                        STDERR.puts '\t--file  <file>'
         
     | 
| 
      
 804 
     | 
    
         
            +
                        STDERR.puts '\t--image <image>'
         
     | 
| 
      
 805 
     | 
    
         
            +
                        exit(-1)
         
     | 
| 
       842 
806 
     | 
    
         
             
                    end
         
     | 
| 
       843 
807 
     | 
    
         | 
| 
       844 
808 
     | 
    
         
             
                    helper.perform_action(args[0], options, 'Attaching disk') do |vm|
         
     | 
| 
         @@ -861,37 +825,35 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       861 
825 
     | 
    
         
             
                end
         
     | 
| 
       862 
826 
     | 
    
         | 
| 
       863 
827 
     | 
    
         
             
                nic_attach_desc = <<-EOT.unindent
         
     | 
| 
       864 
     | 
    
         
            -
                    Attaches a NIC to a VM. 
     | 
| 
      
 828 
     | 
    
         
            +
                    Attaches a NIC to a VM.
         
     | 
| 
      
 829 
     | 
    
         
            +
             
     | 
| 
      
 830 
     | 
    
         
            +
                    To attach a nic alias
         
     | 
| 
      
 831 
     | 
    
         
            +
                    #{OneVMHelper.template_input_help('NIC')}
         
     | 
| 
       865 
832 
     | 
    
         | 
| 
       866 
833 
     | 
    
         
             
                    To hotplug a PCI device and use it as a NIC interface in the VM select
         
     | 
| 
       867 
834 
     | 
    
         
             
                    it with --pci (short_address) or --pci_device (device ID),
         
     | 
| 
       868 
835 
     | 
    
         
             
                    --pci_class (class ID) and/or --pci_vendor (vendor ID).
         
     | 
| 
       869 
836 
     | 
    
         | 
| 
       870 
     | 
    
         
            -
                    To attach a nic alias, use --file or --alias option.
         
     | 
| 
       871 
     | 
    
         
            -
             
     | 
| 
       872 
837 
     | 
    
         
             
                    States: RUNNING, POWEROFF
         
     | 
| 
       873 
838 
     | 
    
         
             
                EOT
         
     | 
| 
       874 
839 
     | 
    
         | 
| 
       875 
840 
     | 
    
         
             
                command :"nic-attach", nic_attach_desc, :vmid,
         
     | 
| 
       876 
     | 
    
         
            -
                        :options => [ 
     | 
| 
       877 
     | 
    
         
            -
             
     | 
| 
       878 
     | 
    
         
            -
             
     | 
| 
       879 
     | 
    
         
            -
             
     | 
| 
       880 
     | 
    
         
            -
             
     | 
| 
       881 
     | 
    
         
            -
             
     | 
| 
       882 
     | 
    
         
            -
             
     | 
| 
       883 
     | 
    
         
            -
             
     | 
| 
       884 
     | 
    
         
            -
             
     | 
| 
       885 
     | 
    
         
            -
             
     | 
| 
       886 
     | 
    
         
            -
                         
     | 
| 
       887 
     | 
    
         
            -
                        STDERR.puts "\t--file    <file>"
         
     | 
| 
       888 
     | 
    
         
            -
                        STDERR.puts "\t--network <network>"
         
     | 
| 
       889 
     | 
    
         
            -
                        exit(-1)
         
     | 
| 
       890 
     | 
    
         
            -
                    end
         
     | 
| 
       891 
     | 
    
         
            -
             
     | 
| 
      
 841 
     | 
    
         
            +
                        :options => [
         
     | 
| 
      
 842 
     | 
    
         
            +
                            OpenNebulaHelper::FILE,
         
     | 
| 
      
 843 
     | 
    
         
            +
                            OneVMHelper::NETWORK,
         
     | 
| 
      
 844 
     | 
    
         
            +
                            OneVMHelper::IP,
         
     | 
| 
      
 845 
     | 
    
         
            +
                            OneVMHelper::ALIAS,
         
     | 
| 
      
 846 
     | 
    
         
            +
                            OneVMHelper::NIC_NAME,
         
     | 
| 
      
 847 
     | 
    
         
            +
                            PCI,
         
     | 
| 
      
 848 
     | 
    
         
            +
                            PCI_CLASS,
         
     | 
| 
      
 849 
     | 
    
         
            +
                            PCI_VENDOR,
         
     | 
| 
      
 850 
     | 
    
         
            +
                            PCI_DEVICE
         
     | 
| 
      
 851 
     | 
    
         
            +
                        ] do
         
     | 
| 
       892 
852 
     | 
    
         
             
                    if options[:file]
         
     | 
| 
       893 
853 
     | 
    
         
             
                        template = File.read(options[:file])
         
     | 
| 
       894 
     | 
    
         
            -
                     
     | 
| 
      
 854 
     | 
    
         
            +
                    elsif STDIN.wait_readable(0)
         
     | 
| 
      
 855 
     | 
    
         
            +
                        template = STDIN.read
         
     | 
| 
      
 856 
     | 
    
         
            +
                    elsif options[:network]
         
     | 
| 
       895 
857 
     | 
    
         
             
                        network_id = options[:network]
         
     | 
| 
       896 
858 
     | 
    
         
             
                        ip         = options[:ip]
         
     | 
| 
       897 
859 
     | 
    
         
             
                        nic_alias  = options[:alias]
         
     | 
| 
         @@ -923,6 +885,11 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       923 
885 
     | 
    
         
             
                        template << ", IP   = #{ip}" if ip
         
     | 
| 
       924 
886 
     | 
    
         
             
                        template << ", NAME = #{nic_name}" if nic_name
         
     | 
| 
       925 
887 
     | 
    
         
             
                        template << ']'
         
     | 
| 
      
 888 
     | 
    
         
            +
                    else
         
     | 
| 
      
 889 
     | 
    
         
            +
                        STDERR.puts 'Provide a network or a template:'
         
     | 
| 
      
 890 
     | 
    
         
            +
                        STDERR.puts "\t--file    <file>"
         
     | 
| 
      
 891 
     | 
    
         
            +
                        STDERR.puts "\t--network <network>"
         
     | 
| 
      
 892 
     | 
    
         
            +
                        exit(-1)
         
     | 
| 
       926 
893 
     | 
    
         
             
                    end
         
     | 
| 
       927 
894 
     | 
    
         | 
| 
       928 
895 
     | 
    
         
             
                    helper.perform_action(args[0], options, 'Attaching NIC') do |vm|
         
     | 
| 
         @@ -1084,12 +1051,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1084 
1051 
     | 
    
         
             
                EOT
         
     | 
| 
       1085 
1052 
     | 
    
         | 
| 
       1086 
1053 
     | 
    
         
             
                command :"snapshot-create", snapshot_create_desc, [:range, :vmid_list],
         
     | 
| 
       1087 
     | 
    
         
            -
                        [:name, nil], :options =>  
     | 
| 
       1088 
     | 
    
         
            -
                                                   OneVMHelper::WEEKLY,
         
     | 
| 
       1089 
     | 
    
         
            -
                                                   OneVMHelper::MONTHLY,
         
     | 
| 
       1090 
     | 
    
         
            -
                                                   OneVMHelper::YEARLY,
         
     | 
| 
       1091 
     | 
    
         
            -
                                                   OneVMHelper::HOURLY,
         
     | 
| 
       1092 
     | 
    
         
            -
                                                   OneVMHelper::END_TIME] do
         
     | 
| 
      
 1054 
     | 
    
         
            +
                        [:name, nil], :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1093 
1055 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1094 
1056 
     | 
    
         
             
                        # add name as an argument
         
     | 
| 
       1095 
1057 
     | 
    
         
             
                        options[:args] = args[1]
         
     | 
| 
         @@ -1108,12 +1070,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1108 
1070 
     | 
    
         
             
                EOT
         
     | 
| 
       1109 
1071 
     | 
    
         | 
| 
       1110 
1072 
     | 
    
         
             
                command :"snapshot-revert", snapshot_revert_desc, :vmid, :snapshot_id,
         
     | 
| 
       1111 
     | 
    
         
            -
                        :options =>  
     | 
| 
       1112 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       1113 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       1114 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       1115 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       1116 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 1073 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1117 
1074 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1118 
1075 
     | 
    
         
             
                        # add snap ID as an argument
         
     | 
| 
       1119 
1076 
     | 
    
         
             
                        options[:args] = args[1]
         
     | 
| 
         @@ -1132,12 +1089,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1132 
1089 
     | 
    
         
             
                EOT
         
     | 
| 
       1133 
1090 
     | 
    
         | 
| 
       1134 
1091 
     | 
    
         
             
                command :"snapshot-delete", snapshot_delete_desc, :vmid, :snapshot_id,
         
     | 
| 
       1135 
     | 
    
         
            -
                        :options =>  
     | 
| 
       1136 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       1137 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       1138 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       1139 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       1140 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 1092 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1141 
1093 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1142 
1094 
     | 
    
         
             
                        # add snap ID as an argument
         
     | 
| 
       1143 
1095 
     | 
    
         
             
                        options[:args] = args[1]
         
     | 
| 
         @@ -1159,12 +1111,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1159 
1111 
     | 
    
         | 
| 
       1160 
1112 
     | 
    
         
             
                command :"disk-snapshot-create", disk_snapshot_create_desc,
         
     | 
| 
       1161 
1113 
     | 
    
         
             
                        :vmid, :diskid, :name,
         
     | 
| 
       1162 
     | 
    
         
            -
                        :options =>  
     | 
| 
       1163 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       1164 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       1165 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       1166 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       1167 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 1114 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1168 
1115 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1169 
1116 
     | 
    
         
             
                        # add disk ID and name as arguments
         
     | 
| 
       1170 
1117 
     | 
    
         
             
                        options[:args] = "#{args[1]},#{args[2]}"
         
     | 
| 
         @@ -1186,12 +1133,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1186 
1133 
     | 
    
         | 
| 
       1187 
1134 
     | 
    
         
             
                command :"disk-snapshot-revert", disk_snapshot_revert_desc,
         
     | 
| 
       1188 
1135 
     | 
    
         
             
                        :vmid, :diskid, :disk_snapshot_id,
         
     | 
| 
       1189 
     | 
    
         
            -
                        :options =>  
     | 
| 
       1190 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       1191 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       1192 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       1193 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       1194 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 1136 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1195 
1137 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1196 
1138 
     | 
    
         
             
                        # add disk ID and snap ID as arguments
         
     | 
| 
       1197 
1139 
     | 
    
         
             
                        options[:args] = "#{args[1]},#{args[2]}"
         
     | 
| 
         @@ -1213,12 +1155,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1213 
1155 
     | 
    
         | 
| 
       1214 
1156 
     | 
    
         
             
                command :"disk-snapshot-delete", disk_snapshot_delete_desc,
         
     | 
| 
       1215 
1157 
     | 
    
         
             
                        :vmid, :diskid, :disk_snapshot_id,
         
     | 
| 
       1216 
     | 
    
         
            -
                        :options =>  
     | 
| 
       1217 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       1218 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       1219 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       1220 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       1221 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 1158 
     | 
    
         
            +
                        :options => OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1222 
1159 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1223 
1160 
     | 
    
         
             
                        # add disk ID and snap ID as arguments
         
     | 
| 
       1224 
1161 
     | 
    
         
             
                        options[:args] = "#{args[1]},#{args[2]}"
         
     | 
| 
         @@ -1278,7 +1215,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1278 
1215 
     | 
    
         
             
                end
         
     | 
| 
       1279 
1216 
     | 
    
         | 
| 
       1280 
1217 
     | 
    
         
             
                list_desc = <<-EOT.unindent
         
     | 
| 
       1281 
     | 
    
         
            -
                    Lists VMs in the pool
         
     | 
| 
      
 1218 
     | 
    
         
            +
                    Lists VMs in the pool. #{OneVMHelper.list_layout_help}
         
     | 
| 
       1282 
1219 
     | 
    
         
             
                EOT
         
     | 
| 
       1283 
1220 
     | 
    
         | 
| 
       1284 
1221 
     | 
    
         
             
                command :list, list_desc, [:filterflag, nil],
         
     | 
| 
         @@ -1333,13 +1270,15 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1333 
1270 
     | 
    
         
             
                    Resizes the capacity of a Virtual Machine (offline, the VM cannot be
         
     | 
| 
       1334 
1271 
     | 
    
         
             
                    RUNNING)
         
     | 
| 
       1335 
1272 
     | 
    
         | 
| 
      
 1273 
     | 
    
         
            +
                    #{OpenNebulaHelper::TEMPLATE_INPUT}
         
     | 
| 
       1336 
1274 
     | 
    
         
             
                EOT
         
     | 
| 
       1337 
1275 
     | 
    
         | 
| 
       1338 
1276 
     | 
    
         
             
                command :resize, resize_desc, :vmid,
         
     | 
| 
       1339 
     | 
    
         
            -
                        :options => OpenNebulaHelper::CAPACITY_OPTIONS_VM +
         
     | 
| 
       1340 
     | 
    
         
            -
                                    [ENFORCE, OneVMHelper::FILE] do
         
     | 
| 
      
 1277 
     | 
    
         
            +
                        :options => OpenNebulaHelper::CAPACITY_OPTIONS_VM + [ENFORCE, OpenNebulaHelper::FILE] do
         
     | 
| 
       1341 
1278 
     | 
    
         
             
                    if options[:file]
         
     | 
| 
       1342 
1279 
     | 
    
         
             
                        template = File.read(options[:file])
         
     | 
| 
      
 1280 
     | 
    
         
            +
                    elsif STDIN.wait_readable(0)
         
     | 
| 
      
 1281 
     | 
    
         
            +
                        template = STDIN.read
         
     | 
| 
       1343 
1282 
     | 
    
         
             
                    else
         
     | 
| 
       1344 
1283 
     | 
    
         
             
                        template = ''
         
     | 
| 
       1345 
1284 
     | 
    
         | 
| 
         @@ -1392,13 +1331,16 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1392 
1331 
     | 
    
         
             
                    In running state only changes in CONTEXT and BACKUP_CONFIG take effect
         
     | 
| 
       1393 
1332 
     | 
    
         
             
                    immediately, other values may need a VM restart.
         
     | 
| 
       1394 
1333 
     | 
    
         | 
| 
       1395 
     | 
    
         
            -
                    This command accepts a template  
     | 
| 
       1396 
     | 
    
         
            -
                     
     | 
| 
      
 1334 
     | 
    
         
            +
                    This command accepts a template or opens an editor.
         
     | 
| 
      
 1335 
     | 
    
         
            +
                    #{OpenNebulaHelper::TEMPLATE_INPUT}
         
     | 
| 
      
 1336 
     | 
    
         
            +
             
     | 
| 
      
 1337 
     | 
    
         
            +
                    The full list of configuration attributes are:
         
     | 
| 
       1397 
1338 
     | 
    
         | 
| 
       1398 
1339 
     | 
    
         
             
                    OS        = ["ARCH", "MACHINE", "KERNEL", "INITRD", "BOOTLOADER", "BOOT", "UUID"]
         
     | 
| 
       1399 
1340 
     | 
    
         
             
                    FEATURES  = ["ACPI", "PAE", "APIC", "LOCALTIME", "HYPERV", "GUEST_AGENT", "IOTHREADS"]
         
     | 
| 
       1400 
1341 
     | 
    
         
             
                    INPUT     = ["TYPE", "BUS"]
         
     | 
| 
       1401 
1342 
     | 
    
         
             
                    GRAPHICS  = ["TYPE", "LISTEN", "PASSWD", "KEYMAP" ]
         
     | 
| 
      
 1343 
     | 
    
         
            +
                    VIDEO     = ["TYPE", "IOMMU", "ATS", "VRAM", "RESOLUTION"]
         
     | 
| 
       1402 
1344 
     | 
    
         
             
                    RAW       = ["DATA", "DATA_VMX", "TYPE", "VALIDATE"]
         
     | 
| 
       1403 
1345 
     | 
    
         
             
                    CPU_MODEL = ["MODEL"]
         
     | 
| 
       1404 
1346 
     | 
    
         
             
                    BACKUP_CONFIG = ["FS_FREEZE", "KEEP_LAST", "BACKUP_VOLATILE", "MODE"]
         
     | 
| 
         @@ -1411,6 +1353,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1411 
1353 
     | 
    
         | 
| 
       1412 
1354 
     | 
    
         
             
                    begin
         
     | 
| 
       1413 
1355 
     | 
    
         
             
                        template = File.read(args[1]) if args[1]
         
     | 
| 
      
 1356 
     | 
    
         
            +
                        template = STDIN.read if STDIN.wait_readable(0)
         
     | 
| 
       1414 
1357 
     | 
    
         
             
                    rescue StandardError => e
         
     | 
| 
       1415 
1358 
     | 
    
         
             
                        STDERR.puts "Error reading template: #{e.message}."
         
     | 
| 
       1416 
1359 
     | 
    
         
             
                        exit(-1)
         
     | 
| 
         @@ -1430,8 +1373,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1430 
1373 
     | 
    
         
             
                                                            'BACKUP_CONFIG')
         
     | 
| 
       1431 
1374 
     | 
    
         
             
                            template = vm.template_like_str('TEMPLATE', true,
         
     | 
| 
       1432 
1375 
     | 
    
         
             
                                                            'OS | FEATURES | INPUT | '\
         
     | 
| 
       1433 
     | 
    
         
            -
                                                            'GRAPHICS |  
     | 
| 
       1434 
     | 
    
         
            -
                                                            'CPU_MODEL')
         
     | 
| 
      
 1376 
     | 
    
         
            +
                                                            'GRAPHICS | VIDEO | RAW | '\
         
     | 
| 
      
 1377 
     | 
    
         
            +
                                                            'CONTEXT | CPU_MODEL')
         
     | 
| 
       1435 
1378 
     | 
    
         | 
| 
       1436 
1379 
     | 
    
         
             
                            template << "\n" << backup
         
     | 
| 
       1437 
1380 
     | 
    
         | 
| 
         @@ -1485,11 +1428,11 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1485 
1428 
     | 
    
         
             
                create_chart_desc = <<-EOT.unindent
         
     | 
| 
       1486 
1429 
     | 
    
         
             
                    Adds a charter to the VM, these are some consecutive scheduled actions
         
     | 
| 
       1487 
1430 
     | 
    
         | 
| 
       1488 
     | 
    
         
            -
                    You can configure the actions in  
     | 
| 
      
 1431 
     | 
    
         
            +
                    You can configure the actions in #{OneVMHelper.conf_file}
         
     | 
| 
       1489 
1432 
     | 
    
         
             
                EOT
         
     | 
| 
       1490 
1433 
     | 
    
         | 
| 
       1491 
1434 
     | 
    
         
             
                command :'create-chart', create_chart_desc, :vmid do
         
     | 
| 
       1492 
     | 
    
         
            -
                    charters = helper. 
     | 
| 
      
 1435 
     | 
    
         
            +
                    charters = helper.charters
         
     | 
| 
       1493 
1436 
     | 
    
         | 
| 
       1494 
1437 
     | 
    
         
             
                    if charters.nil?
         
     | 
| 
       1495 
1438 
     | 
    
         
             
                        STDERR.puts 'No charters found on configuration file'
         
     | 
| 
         @@ -1512,10 +1455,7 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1512 
1455 
     | 
    
         
             
                                                         action.to_s,
         
     | 
| 
       1513 
1456 
     | 
    
         
             
                                                         time[:warning][:time] + acc_w)
         
     | 
| 
       1514 
1457 
     | 
    
         | 
| 
       1515 
     | 
    
         
            -
                            if  
     | 
| 
       1516 
     | 
    
         
            -
                                STDERR.puts rc.message
         
     | 
| 
       1517 
     | 
    
         
            -
                                exit(-1)
         
     | 
| 
       1518 
     | 
    
         
            -
                            end
         
     | 
| 
      
 1458 
     | 
    
         
            +
                            exit(-1) if rc < 0
         
     | 
| 
       1519 
1459 
     | 
    
         | 
| 
       1520 
1460 
     | 
    
         
             
                            acc_t += time[:time].to_i
         
     | 
| 
       1521 
1461 
     | 
    
         
             
                            acc_w += time[:warning][:time].to_i
         
     | 
| 
         @@ -1551,7 +1491,38 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1551 
1491 
     | 
    
         
             
                        :vmid,
         
     | 
| 
       1552 
1492 
     | 
    
         
             
                        :sched_id,
         
     | 
| 
       1553 
1493 
     | 
    
         
             
                        [:file, nil] do
         
     | 
| 
       1554 
     | 
    
         
            -
                    helper.update_schedule_action(args[0], args[1], args[2])
         
     | 
| 
      
 1494 
     | 
    
         
            +
                    helper.update_schedule_action(args[0], args[1], args[2], options)
         
     | 
| 
      
 1495 
     | 
    
         
            +
             
     | 
| 
      
 1496 
     | 
    
         
            +
                    0
         
     | 
| 
      
 1497 
     | 
    
         
            +
                end
         
     | 
| 
      
 1498 
     | 
    
         
            +
             
     | 
| 
      
 1499 
     | 
    
         
            +
                sched_delete_desc = <<-EOT.unindent
         
     | 
| 
      
 1500 
     | 
    
         
            +
                    Deletes a Scheduled Action from the VM
         
     | 
| 
      
 1501 
     | 
    
         
            +
                EOT
         
     | 
| 
      
 1502 
     | 
    
         
            +
             
     | 
| 
      
 1503 
     | 
    
         
            +
                command :'sched-delete', sched_delete_desc, :vmid, :sched_id do
         
     | 
| 
      
 1504 
     | 
    
         
            +
                    helper.perform_action(args[0], {}, 'Scheduled Action deleted') do |vm|
         
     | 
| 
      
 1505 
     | 
    
         
            +
                        rc = vm.sched_action_delete(args[1])
         
     | 
| 
      
 1506 
     | 
    
         
            +
             
     | 
| 
      
 1507 
     | 
    
         
            +
                        if OpenNebula.is_error?(rc)
         
     | 
| 
      
 1508 
     | 
    
         
            +
                            STDERR.puts "Error deleting: #{rc.message}"
         
     | 
| 
      
 1509 
     | 
    
         
            +
                            exit(-1)
         
     | 
| 
      
 1510 
     | 
    
         
            +
                        end
         
     | 
| 
      
 1511 
     | 
    
         
            +
                    end
         
     | 
| 
      
 1512 
     | 
    
         
            +
             
     | 
| 
      
 1513 
     | 
    
         
            +
                    0
         
     | 
| 
      
 1514 
     | 
    
         
            +
                end
         
     | 
| 
      
 1515 
     | 
    
         
            +
             
     | 
| 
      
 1516 
     | 
    
         
            +
                sched_update_desc = <<-EOT.unindent
         
     | 
| 
      
 1517 
     | 
    
         
            +
                    Updates a Scheduled Action from a VM
         
     | 
| 
      
 1518 
     | 
    
         
            +
                EOT
         
     | 
| 
      
 1519 
     | 
    
         
            +
             
     | 
| 
      
 1520 
     | 
    
         
            +
                command :'sched-update',
         
     | 
| 
      
 1521 
     | 
    
         
            +
                        sched_update_desc,
         
     | 
| 
      
 1522 
     | 
    
         
            +
                        :vmid,
         
     | 
| 
      
 1523 
     | 
    
         
            +
                        :sched_id,
         
     | 
| 
      
 1524 
     | 
    
         
            +
                        [:file, nil] do
         
     | 
| 
      
 1525 
     | 
    
         
            +
                    helper.update_schedule_action(args[0], args[1], args[2], options)
         
     | 
| 
       1555 
1526 
     | 
    
         | 
| 
       1556 
1527 
     | 
    
         
             
                    0
         
     | 
| 
       1557 
1528 
     | 
    
         
             
                end
         
     | 
| 
         @@ -1566,19 +1537,14 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1566 
1537 
     | 
    
         
             
                        backup_vm_desc,
         
     | 
| 
       1567 
1538 
     | 
    
         
             
                        :vmid,
         
     | 
| 
       1568 
1539 
     | 
    
         
             
                        :options => [RESET_BACKUP,
         
     | 
| 
       1569 
     | 
    
         
            -
                                     OneDatastoreHelper::DATASTORE 
     | 
| 
       1570 
     | 
    
         
            -
             
     | 
| 
       1571 
     | 
    
         
            -
                                     OneVMHelper::WEEKLY,
         
     | 
| 
       1572 
     | 
    
         
            -
                                     OneVMHelper::MONTHLY,
         
     | 
| 
       1573 
     | 
    
         
            -
                                     OneVMHelper::YEARLY,
         
     | 
| 
       1574 
     | 
    
         
            -
                                     OneVMHelper::HOURLY,
         
     | 
| 
       1575 
     | 
    
         
            -
                                     OneVMHelper::END_TIME] do
         
     | 
| 
      
 1540 
     | 
    
         
            +
                                     OneDatastoreHelper::DATASTORE] +
         
     | 
| 
      
 1541 
     | 
    
         
            +
                                    OpenNebulaHelper::SCHEDULE_OPTIONS do
         
     | 
| 
       1576 
1542 
     | 
    
         
             
                    options[:datastore] = -1 if options[:datastore].nil?
         
     | 
| 
       1577 
1543 
     | 
    
         | 
| 
       1578 
1544 
     | 
    
         
             
                    reset = options[:reset] == true
         
     | 
| 
       1579 
1545 
     | 
    
         | 
| 
       1580 
1546 
     | 
    
         
             
                    if !options[:schedule].nil?
         
     | 
| 
       1581 
     | 
    
         
            -
                        options[:args] = options[:datastore]
         
     | 
| 
      
 1547 
     | 
    
         
            +
                        options[:args] = "#{options[:datastore]},#{reset ? 1 : 0}"
         
     | 
| 
       1582 
1548 
     | 
    
         | 
| 
       1583 
1549 
     | 
    
         
             
                        helper.schedule_actions([args[0]], options, @comm_name)
         
     | 
| 
       1584 
1550 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -1716,8 +1682,8 @@ CommandParser::CmdParser.new(ARGV) do 
     | 
|
| 
       1716 
1682 
     | 
    
         
             
                    end
         
     | 
| 
       1717 
1683 
     | 
    
         
             
                end
         
     | 
| 
       1718 
1684 
     | 
    
         | 
| 
       1719 
     | 
    
         
            -
                # Deprecated commands
         
     | 
| 
      
 1685 
     | 
    
         
            +
                # Deprecated commands, remove these commands in release 8.x
         
     | 
| 
       1720 
1686 
     | 
    
         | 
| 
       1721 
     | 
    
         
            -
                deprecated_command(: 
     | 
| 
       1722 
     | 
    
         
            -
                deprecated_command(: 
     | 
| 
      
 1687 
     | 
    
         
            +
                deprecated_command(:'delete-chart', 'sched-delete')
         
     | 
| 
      
 1688 
     | 
    
         
            +
                deprecated_command(:'update-chart', 'sched-update')
         
     | 
| 
       1723 
1689 
     | 
    
         
             
            end
         
     |