V2T migration: reorder networks replay

Exteernal networks should be migrated before internal ones, as
a vlan router interface cannot be added to a router with no external GW

Change-Id: If2c1721195c1b54c1f90510205f341e0945353f8
This commit is contained in:
asarfaty 2021-02-28 10:34:35 +02:00
parent 05114e72be
commit 5d99260ebc
1 changed files with 13 additions and 0 deletions

View File

@ -591,6 +591,19 @@ class ApiReplayClient(utils.PrepareObjectForMigration):
dest_azs = self.get_dest_availablity_zones('network')
total_num = len(source_networks)
# Reorder the source networks as we need to migrate the external first
# This is mandatory as vlan networks cannot be added to a router with
# no GW
external = []
internal = []
for network in source_networks:
if network.get('router:external'):
external.append(network)
else:
internal.append(network)
source_networks = external + internal
LOG.info("Migrating %(nets)s networks, %(subnets)s subnets and "
"%(ports)s ports",
{'nets': total_num, 'subnets': len(source_subnets),