Ejemplo n.º 1
0
    property_names=['uuid', 'portgroup'],
    from_node=nfmor,
    obj_type='DistributedVirtualSwitch')

dvswitch_mor = None
# Get the dvswitches managed object
for dvswitch in dvswitch_mors:
    if dvswitch_mor:
        break
    for p in dvswitch.PropSet:
        if p.Name == "portgroup":
            pg_mors = p.Val.ManagedObjectReference
            for pg_mor in pg_mors:
                if dvswitch_mor:
                    break
                key_mor = s._get_object_properties(pg_mor,
                                                   property_names=['key'])
                for key in key_mor.PropSet:
                    if key.Val == portgroupKey:
                        dvswitch_mor = dvswitch

# Get the switches uuid
dvswitch_uuid = None
for p in dvswitch_mor.PropSet:
    if p.Name == "uuid":
        dvswitch_uuid = p.Val

# hostFolder managed object reference
hfmor = dcprops.hostFolder._obj
crmors = s._retrieve_properties_traversal(property_names=['name', 'host'],
                                          from_node=hfmor,
                                          obj_type='ComputeResource')
Ejemplo n.º 2
0
        for ip in net_info[0]['ip_addresses']:
            if ipv6 and re.match('\d{1,4}\:.*',
                                 ip) and not re.match('fe83\:.*', ip):
                print_verbose('IPv6 address found: %s' % ip)
                return ip
            elif not ipv6 and re.match('\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}',
                                       ip) and ip != '127.0.0.1':
                print_verbose('IPv4 address found: %s' % ip)
                return ip
    print_verbose('Timeout expired: No IP address found')
    return None


# Create mor versions of our variables (Managed Object References)
host_mor = getHostByName(server, dev_hypervisor)
prop = server._get_object_properties(host_mor, ['parent'])
parent = prop.PropSet[0].Val
rp_mor = getResourcePoolByProperty(server, "parent", parent)
ds_mor = getDatastoreByName(server, host_datastore)

# Create our clone
print "INFO: Cloning dev template..."
vm_clone = vm_template.clone(name=vm_clone_name,
                             sync_run=True,
                             resourcepool=rp_mor,
                             folder='Dev VMs',
                             host=host_mor,
                             datastore=ds_mor)

# Get the IP address of our new clone (up to maxwait time)
vm_clone_ip = find_ip(vm_clone)