pass default l3_gateway_service_uuid if not specified

Previously, if one created an external network of type l3_ext and did
not specify the default_gw_service_uuid via --provider:physical_network
an exception would be raised on the backend as we need to specify the
l3_gw_service_uuid we want nvp to use.

Fixes bug: 1224660

Change-Id: I6312956528c17d6a704d4e4ef629916f6463312a
This commit is contained in:
Aaron Rosen
2013-09-12 12:42:29 -07:00
parent 49ddd813d3
commit 8372bbac08

View File

@@ -622,11 +622,13 @@ class NvpPluginV2(addr_pair_db.AllowedAddressPairsMixin,
ext_network = self.get_network(context, port_data['network_id'])
if ext_network.get(pnet.NETWORK_TYPE) == NetworkTypes.L3_EXT:
# Update attachment
physical_network = (ext_network[pnet.PHYSICAL_NETWORK] or
self.cluster.default_l3_gw_service_uuid)
self._update_router_port_attachment(
self.cluster, context, router_id, port_data,
lr_port['uuid'],
"L3GatewayAttachment",
ext_network[pnet.PHYSICAL_NETWORK],
physical_network,
ext_network[pnet.SEGMENTATION_ID])
LOG.debug(_("_nvp_create_ext_gw_port completed on external network "