Revision a379d9bd
b/scripts/gnt-instance | ||
---|---|---|
396 | 396 |
"iallocator": None, |
397 | 397 |
"primary_node": None, |
398 | 398 |
"secondary_node": None, |
399 |
"ip": 'none', |
|
400 |
"mac": 'auto', |
|
401 |
"bridge": None, |
|
399 |
"nics": None, |
|
402 | 400 |
"start": True, |
403 | 401 |
"ip_check": True, |
404 | 402 |
"hypervisor": None, |
... | ... | |
466 | 464 |
(elem, name, err)) |
467 | 465 |
disks.append({"size": size}) |
468 | 466 |
|
469 |
nic0 = {'ip': specs['ip'], 'bridge': specs['bridge'], 'mac': specs['mac']} |
|
470 |
|
|
471 | 467 |
utils.ForceDictType(specs['backend'], constants.BES_PARAMETER_TYPES) |
472 | 468 |
utils.ForceDictType(hvparams, constants.HVS_PARAMETER_TYPES) |
473 | 469 |
|
470 |
tmp_nics = [] |
|
471 |
for field in ('ip', 'mac', 'mode', 'link', 'bridge'): |
|
472 |
if field in specs: |
|
473 |
if not tmp_nics: |
|
474 |
tmp_nics.append({}) |
|
475 |
tmp_nics[0][field] = specs[field] |
|
476 |
|
|
477 |
if specs['nics'] is not None and tmp_nics: |
|
478 |
raise errors.OpPrereqError("'nics' list incompatible with using" |
|
479 |
" individual nic fields as well") |
|
480 |
elif specs['nics'] is not None: |
|
481 |
tmp_nics = specs['nics'] |
|
482 |
elif not tmp_nics: |
|
483 |
tmp_nics = [{}] |
|
484 |
|
|
474 | 485 |
op = opcodes.OpCreateInstance(instance_name=name, |
475 | 486 |
disks=disks, |
476 | 487 |
disk_template=specs['template'], |
... | ... | |
478 | 489 |
os_type=specs['os'], |
479 | 490 |
pnode=specs['primary_node'], |
480 | 491 |
snode=specs['secondary_node'], |
481 |
nics=[nic0],
|
|
492 |
nics=tmp_nics,
|
|
482 | 493 |
start=specs['start'], |
483 | 494 |
ip_check=specs['ip_check'], |
484 | 495 |
wait_for_sync=True, |
Also available in: Unified diff