Merge "NSX: Ensure gateway devices are usable after upgrade"
This commit is contained in:
@@ -73,8 +73,11 @@ def upgrade(active_plugins=None, options=None):
|
|||||||
# Create a networkgatewaydevice for each existing reference.
|
# Create a networkgatewaydevice for each existing reference.
|
||||||
# For existing references nsx_id == neutron_id
|
# For existing references nsx_id == neutron_id
|
||||||
# Do not fill conenctor info as they would be unknown
|
# Do not fill conenctor info as they would be unknown
|
||||||
op.execute("INSERT INTO networkgatewaydevices (id, nsx_id) SELECT "
|
op.execute("INSERT INTO networkgatewaydevices (id, nsx_id, tenant_id) "
|
||||||
"id, id as nsx_id FROM networkgatewaydevicereferences")
|
"SELECT gw_dev_ref.id, gw_dev_ref.id as nsx_id, tenant_id "
|
||||||
|
"FROM networkgatewaydevicereferences AS gw_dev_ref "
|
||||||
|
"INNER JOIN networkgateways AS net_gw ON "
|
||||||
|
"gw_dev_ref.network_gateway_id=net_gw.id")
|
||||||
|
|
||||||
|
|
||||||
def downgrade(active_plugins=None, options=None):
|
def downgrade(active_plugins=None, options=None):
|
||||||
|
|||||||
@@ -120,15 +120,18 @@ def _build_gateway_device_body(tenant_id, display_name, neutron_id,
|
|||||||
utils.NetworkTypes.BRIDGE: "BridgeConnector",
|
utils.NetworkTypes.BRIDGE: "BridgeConnector",
|
||||||
'ipsec%s' % utils.NetworkTypes.STT: "IPsecSTT",
|
'ipsec%s' % utils.NetworkTypes.STT: "IPsecSTT",
|
||||||
'ipsec%s' % utils.NetworkTypes.GRE: "IPsecGRE"}
|
'ipsec%s' % utils.NetworkTypes.GRE: "IPsecGRE"}
|
||||||
nsx_connector_type = connector_type_mappings[connector_type]
|
nsx_connector_type = connector_type_mappings.get(connector_type)
|
||||||
body = {"display_name": utils.check_and_truncate(display_name),
|
body = {"display_name": utils.check_and_truncate(display_name),
|
||||||
"tags": utils.get_tags(os_tid=tenant_id,
|
"tags": utils.get_tags(os_tid=tenant_id,
|
||||||
q_gw_dev_id=neutron_id),
|
q_gw_dev_id=neutron_id),
|
||||||
"transport_connectors": [
|
"admin_status_enabled": True}
|
||||||
|
|
||||||
|
if connector_ip and nsx_connector_type:
|
||||||
|
body["transport_connectors"] = [
|
||||||
{"transport_zone_uuid": tz_uuid,
|
{"transport_zone_uuid": tz_uuid,
|
||||||
"ip_address": connector_ip,
|
"ip_address": connector_ip,
|
||||||
"type": nsx_connector_type}],
|
"type": nsx_connector_type}]
|
||||||
"admin_status_enabled": True}
|
|
||||||
if client_certificate:
|
if client_certificate:
|
||||||
body["credential"] = {"client_certificate":
|
body["credential"] = {"client_certificate":
|
||||||
{"pem_encoded": client_certificate},
|
{"pem_encoded": client_certificate},
|
||||||
|
|||||||
Reference in New Issue
Block a user