Revision 9939547b scripts/gnt-instance

b/scripts/gnt-instance
375 375
  in the form::
376 376

  
377 377
    {"instance-name":{
378
      "disk_size": 25,
379
      "swap_size": 1024,
378
      "disk_size": [20480],
380 379
      "template": "drbd",
381 380
      "backend": {
382 381
        "memory": 512,
383 382
        "vcpus": 1 },
384
      "os": "etch-image",
383
      "os": "debootstrap",
385 384
      "primary_node": "firstnode",
386 385
      "secondary_node": "secondnode",
387 386
      "iallocator": "dumb"}
......
397 396
  @return: the desired exit code
398 397

  
399 398
  """
400
  _DEFAULT_SPECS = {"disk_size": 20 * 1024,
401
                    "swap_size": 4 * 1024,
399
  _DEFAULT_SPECS = {"disk_size": [20 * 1024],
402 400
                    "backend": {},
403 401
                    "iallocator": None,
404 402
                    "primary_node": None,
......
458 456
    if specs['hypervisor']:
459 457
      hypervisor, hvparams = specs['hypervisor'].iteritems()
460 458

  
459
    disks = []
460
    for elem in specs['disk_size']:
461
      try:
462
        size = utils.ParseUnit(elem)
463
      except ValueError, err:
464
        raise errors.OpPrereqError("Invalid disk size '%s' for"
465
                                   " instance %s: %s" %
466
                                   (elem, name, err))
467
      disks.append({"size": size})
468

  
469
    nic0 = {'ip': specs['ip'], 'bridge': specs['bridge'], 'mac': specs['mac']}
470

  
461 471
    op = opcodes.OpCreateInstance(instance_name=name,
462
                                  disk_size=specs['disk_size'],
463
                                  swap_size=specs['swap_size'],
472
                                  disks=disks,
464 473
                                  disk_template=specs['template'],
465 474
                                  mode=constants.INSTANCE_CREATE,
466 475
                                  os_type=specs['os'],
467 476
                                  pnode=specs['primary_node'],
468 477
                                  snode=specs['secondary_node'],
469
                                  ip=specs['ip'], bridge=specs['bridge'],
478
                                  nics=[nic0],
470 479
                                  start=specs['start'],
471 480
                                  ip_check=specs['ip_check'],
472 481
                                  wait_for_sync=True,
473
                                  mac=specs['mac'],
474 482
                                  iallocator=specs['iallocator'],
475 483
                                  hypervisor=hypervisor,
476 484
                                  hvparams=hvparams,

Also available in: Unified diff