Пример #1
0
def _get_nics(vm_):
    """
    Create network interfaces on appropriate LANs as defined in cloud profile.
    """
    nics = []
    if "public_lan" in vm_:
        firewall_rules = []
        # Set LAN to public if it already exists, otherwise create a new
        # public LAN.
        if "public_firewall_rules" in vm_:
            firewall_rules = _get_firewall_rules(vm_["public_firewall_rules"])
        nic = NIC(
            lan=set_public_lan(int(vm_["public_lan"])),
            name="public",
            firewall_rules=firewall_rules,
        )
        if "public_ips" in vm_:
            nic.ips = _get_ip_addresses(vm_["public_ips"])
        nics.append(nic)

    if "private_lan" in vm_:
        firewall_rules = []
        if "private_firewall_rules" in vm_:
            firewall_rules = _get_firewall_rules(vm_["private_firewall_rules"])
        nic = NIC(lan=int(vm_["private_lan"]),
                  name="private",
                  firewall_rules=firewall_rules)
        if "private_ips" in vm_:
            nic.ips = _get_ip_addresses(vm_["private_ips"])
        if "nat" in vm_ and "private_ips" not in vm_:
            nic.nat = vm_["nat"]
        nics.append(nic)
    return nics
Пример #2
0
def _get_nics(vm_):
    '''
    Create network interfaces on appropriate LANs as defined in cloud profile.
    '''
    nics = []
    if 'public_lan' in vm_:
        firewall_rules = []
        # Set LAN to public if it already exists, otherwise create a new
        # public LAN.
        if 'public_firewall_rules' in vm_:
            firewall_rules = _get_firewall_rules(vm_['public_firewall_rules'])
        nic = NIC(lan=set_public_lan(int(vm_['public_lan'])),
                  name='public',
                  firewall_rules=firewall_rules)
        if 'public_ips' in vm_:
            nic.ips = _get_ip_addresses(vm_['public_ips'])
        nics.append(nic)

    if 'private_lan' in vm_:
        firewall_rules = []
        if 'private_firewall_rules' in vm_:
            firewall_rules = _get_firewall_rules(vm_['private_firewall_rules'])
        nic = NIC(lan=int(vm_['private_lan']),
                  name='private',
                  firewall_rules=firewall_rules)
        if 'private_ips' in vm_:
            nic.ips = _get_ip_addresses(vm_['private_ips'])
        if 'nat' in vm_ and 'private_ips' not in vm_:
            nic.nat = vm_['nat']
        nics.append(nic)
    return nics
Пример #3
0
    def setUpClass(cls):
        cls.resource = resource()
        cls.client = ProfitBricksService(
            username=configuration.USERNAME,
            password=configuration.PASSWORD,
            headers=configuration.HEADERS)

        # Create test datacenter.
        cls.datacenter = cls.client.create_datacenter(
            datacenter=Datacenter(**cls.resource['datacenter']))
        cls.client.wait_for_completion(cls.datacenter)

        # Create test LAN.
        cls.lan = cls.client.create_lan(
            datacenter_id=cls.datacenter['id'],
            lan=LAN(name=cls.resource['lan']['name'], public=False))
        cls.client.wait_for_completion(cls.lan)

        # Create test server.
        cls.server = cls.client.create_server(
            datacenter_id=cls.datacenter['id'],
            server=Server(**cls.resource['server']))
        cls.client.wait_for_completion(cls.server)

        # Create test NIC1.
        nic1 = NIC(**cls.resource['nic'])
        nic1.lan = cls.lan['id']
        cls.ips = ['10.0.0.1']
        nic1.ips = cls.ips
        cls.nic1 = cls.client.create_nic(
            datacenter_id=cls.datacenter['id'],
            server_id=cls.server['id'],
            nic=nic1)
        cls.client.wait_for_completion(cls.nic1)

        # Create test NIC2.
        nic2 = NIC(**cls.resource['nic'])
        nic2.lan = cls.lan['id']
        cls.nic2 = cls.client.create_nic(
            datacenter_id=cls.datacenter['id'],
            server_id=cls.server['id'],
            nic=nic2)
        cls.client.wait_for_completion(cls.nic2)