Revision 5c22d16e tools/burnin

b/tools/burnin
160 160
    parser.add_option("--no-activate-disks", dest="do_activate_disks",
161 161
                      help="Skip disk activation/deactivation",
162 162
                      action="store_false", default=True)
163
    parser.add_option("--no-add-disks", dest="do_addremove_disks",
164
                      help="Skip disk addition/removal",
165
                      action="store_false", default=True)
166
    parser.add_option("--no-add-nics", dest="do_addremove_nics",
167
                      help="Skip NIC addition/removal",
168
                      action="store_false", default=True)
163 169
    parser.add_option("--no-nics", dest="nics",
164 170
                      help="No network interfaces", action="store_const",
165 171
                      const=[], default=[{}])
......
199 205

  
200 206
    if options.disk_template == constants.DT_DISKLESS:
201 207
      disk_size = disk_growth = []
208
      opts.do_addremove_disks = False
202 209
    else:
203 210
      disk_size = [utils.ParseUnit(v) for v in options.disk_size.split(",")]
204 211
      disk_growth = [utils.ParseUnit(v)
......
503 510
      self.ExecOp(op_deact)
504 511
      self.StartInstance(instance)
505 512

  
513
  def AddRemoveDisks(self):
514
    """Add and remove an extra disk for the instances."""
515
    for instance in self.instances:
516
      op_add = opcodes.OpSetInstanceParams(\
517
        instance_name=instance,
518
        disks=[(constants.DDM_ADD, {"size": self.disk_size[0]})])
519
      op_rem = opcodes.OpSetInstanceParams(\
520
        instance_name=instance, disks=[(constants.DDM_REMOVE, {})])
521
      Log("- Adding a disk to instance %s" % (instance,))
522
      self.ExecOp(op_add)
523
      self.StopInstance(instance)
524
      Log("- Removing the last disk of instance %s" % (instance,))
525
      self.ExecOp(op_rem)
526
      self.StartInstance(instance)
527

  
528
  def AddRemoveNICs(self):
529
    """Add and remove an extra NIC for the instances."""
530
    for instance in self.instances:
531
      op_add = opcodes.OpSetInstanceParams(\
532
        instance_name=instance, nics=[(constants.DDM_ADD, {})])
533
      op_rem = opcodes.OpSetInstanceParams(\
534
        instance_name=instance, nics=[(constants.DDM_REMOVE, {})])
535
      Log("- Adding a NIC to instance %s" % (instance,))
536
      self.ExecOp(op_add)
537
      Log("- Removing the last NIC of instance %s" % (instance,))
538
      self.ExecOp(op_rem)
539

  
506 540
  def BurninCluster(self):
507 541
    """Test a cluster intensively.
508 542

  
......
548 582
      if opts.do_reboot:
549 583
        self.Reboot()
550 584

  
585
      if opts.do_addremove_disks:
586
        self.AddRemoveDisks()
587

  
588
      if opts.do_addremove_nics:
589
        self.AddRemoveNICs()
590

  
551 591
      if opts.do_activate_disks:
552 592
        self.ActivateDisks()
553 593

  

Also available in: Unified diff