Пример #1
0
 def test_list_subnets(self, mock_connection):
     ovn_north = OvnNorth()
     result = ovn_north.list_subnets()
     assert len(result) == 2
     assert result[0]['id'] == str(TestOvnNorth.SUBNET_ID101)
     assert result[0]['network_id'] == str(TestOvnNorth.NETWORK_ID10)
     assert result[0]['tenant_id'] == tenant_id()
Пример #2
0
    def row2rest(row):
        if not row:
            return {}
        options = row.options
        external_ids = row.external_ids
        result = {
            SubnetMapper.REST_SUBNET_ID:
            str(row.uuid),
            SubnetMapper.REST_SUBNET_NAME:
            external_ids[SubnetMapper.OVN_NAME],
            SubnetMapper.REST_SUBNET_CIDR:
            row.cidr,
            SubnetMapper.REST_SUBNET_NETWORK_ID:
            external_ids[SubnetMapper.OVN_NETWORK_ID],
            SubnetMapper.REST_SUBNET_IP_VERSION:
            SubnetMapper.IP_VERSION,
            SubnetMapper.REST_TENANT_ID:
            tenant_id(),
            SubnetMapper.REST_SUBNET_ENABLE_DHCP:
            True,
        }
        if SubnetMapper.OVN_GATEWAY in options:
            result[SubnetMapper.REST_SUBNET_GATEWAY_IP] = (
                options[SubnetMapper.OVN_GATEWAY])
        if SubnetMapper.REST_SUBNET_DNS_NAMESERVERS in options:
            result[SubnetMapper.REST_SUBNET_DNS_NAMESERVERS] = [
                options[SubnetMapper.OVN_DNS_SERVER]
            ]

        return result
Пример #3
0
def get_tenants(content, parameters):
    return Response({
        'tenants': [{
            'description': tenant_description(),
            'name': tenant_name(),
            'id': tenant_id()
        }]
    })
Пример #4
0
 def row2rest(network_row):
     if not network_row:
         return {}
     return {
         NetworkMapper.REST_NETWORK_ID: str(network_row.uuid),
         NetworkMapper.REST_NETWORK_NAME: network_row.name,
         NetworkMapper.REST_TENANT_ID: tenant_id()
     }
Пример #5
0
 def assert_port_equal(self, actual, port_row, network_id):
     assert actual['id'] == str(port_row.uuid)
     assert actual['network_id'] == network_id
     assert actual['name'] == port_row.external_ids[PortMapper.OVN_NIC_NAME]
     device_id = port_row.external_ids[PortMapper.OVN_DEVICE_ID]
     assert actual['device_id'] == device_id
     assert actual['security_groups'] == []
     assert actual['port_security_enabled'] is False
     assert actual['tenant_id'] == tenant_id()
     assert actual['fixed_ips'] == []
Пример #6
0
 def row2rest(network_row):
     if not network_row:
         return {}
     result = {
         NetworkMapper.REST_NETWORK_ID: str(network_row.uuid),
         NetworkMapper.REST_NETWORK_NAME: network_row.name,
         NetworkMapper.REST_TENANT_ID: tenant_id(),
         NetworkMapper.REST_STATUS: NetworkMapper.NETWORK_STATUS_ACTIVE
     }
     result.update(NetworkMapper._row2rest_localnet(network_row))
     return result
Пример #7
0
    def row2rest(row):
        if not row:
            return {}

        router_id, network_id, port_id, subnet_id = row

        return {
            AddRouterInterfaceMapper.REST_ROUTERINTERFACE_ID: router_id,
            AddRouterInterfaceMapper.REST_ROUTERINTERFACE_NETWORK_ID:
            network_id,
            AddRouterInterfaceMapper.REST_ROUTERINTERFACE_PORT_ID: port_id,
            AddRouterInterfaceMapper.REST_ROUTERINTERFACE_SUBNET_ID: subnet_id,
            AddRouterInterfaceMapper.REST_ROUTERINTERFACE_SUBNET_IDS:
            [subnet_id],
            AddRouterInterfaceMapper.REST_TENANT_ID: tenant_id(),
        }
Пример #8
0
    def row2rest(row):
        if not row:
            return {}

        return {
            RouterMapper.REST_ROUTER_ID:
            str(row.uuid),
            RouterMapper.REST_ROUTER_NAME:
            row.name,
            RouterMapper.REST_ROUTER_ADMIN_STATE_UP:
            row.enabled,
            RouterMapper.REST_ROUTER_STATUS:
            RouterMapper.ROUTER_STATUS_ACTIVE
            if row.enabled else RouterMapper.ROUTER_STATUS_INACTIVE,
            RouterMapper.REST_ROUTER_ROUTES: [],
            RouterMapper.REST_TENANT_ID:
            tenant_id(),
        }
Пример #9
0
 def row2rest(row):
     """
         Maps the db rows (port, network) to a Json representation of
         a port.
         The 'admin_state_up' property of the port is the product
         of two values:
         - port.up - managed internally by OVN, True only if
         set explicitly to [True]
         - port.enabled - set by the user, True if empty (None) or
         set to [True]
     """
     if not row:
         return {}
     port, network = row
     rest_data = {
         PortMapper.REST_PORT_ID:
         str(port.uuid),
         PortMapper.REST_PORT_NAME:
         port.external_ids[PortMapper.OVN_NIC_NAME],
         PortMapper.REST_PORT_NETWORK_ID:
         str(network.uuid),
         PortMapper.REST_PORT_SECURITY_GROUPS: [],
         PortMapper.REST_PORT_SECURITY_ENABLED:
         False,
         PortMapper.REST_TENANT_ID:
         tenant_id(),
         PortMapper.REST_PORT_FIXED_IPS: [],
         PortMapper.REST_PORT_ADMIN_STATE_UP:
         bool((port.up and port.up[0])
              and (not port.enabled or port.enabled[0]))
     }
     if PortMapper.OVN_DEVICE_ID in port.external_ids:
         rest_data[PortMapper.REST_PORT_DEVICE_ID] = str(
             port.external_ids[PortMapper.OVN_DEVICE_ID])
     if PortMapper.OVN_DEVICE_OWNER in port.external_ids:
         rest_data[PortMapper.REST_PORT_DEVICE_OWNER] = port.external_ids[
             PortMapper.OVN_DEVICE_OWNER]
     if port.addresses:
         mac = port.addresses[0].split(' ')[0]
         rest_data[PortMapper.REST_PORT_MAC_ADDRESS] = mac
     return rest_data
Пример #10
0
    def row2rest(row):
        if not row:
            return {}

        result = {
            RouterMapper.REST_ROUTER_ID:
            str(row.uuid),
            RouterMapper.REST_ROUTER_NAME:
            row.name,
            RouterMapper.REST_ROUTER_ADMIN_STATE_UP:
            row.enabled[0] if row.enabled else True,
            RouterMapper.REST_ROUTER_STATUS:
            RouterMapper.ROUTER_STATUS_ACTIVE
            if row.enabled else RouterMapper.ROUTER_STATUS_INACTIVE,
            RouterMapper.REST_ROUTER_ROUTES: [],
            RouterMapper.REST_TENANT_ID:
            tenant_id(),
        }
        RouterMapper._get_external_gateway_from_row(result, row)

        return result
Пример #11
0
 def assert_networks_equal(self, actual, network_row):
     assert actual['id'] == str(network_row.uuid)
     assert actual['name'] == network_row.name
     assert actual['tenant_id'] == tenant_id()
     self._assert_localnet_networks_equal(actual, network_row)