diff --git a/main.py b/main.py index 2c9df21..9cd21f7 100644 --- a/main.py +++ b/main.py @@ -465,14 +465,16 @@ def loadFlowRouteConfig(self): else: try: instances = dev.rpc.get_config(options={'format': 'json'}, filter_xml='routing-instances') + for instance in instances['configuration']['routing-instances']['instance']: + if instance['name'] == vrf: + _vrf_data = instance['routing-options'] + except TypeError as error: + logger.warn('Routing instance {} not defined. Caught "{}"'.format(vrf, error)) except IndexError as error: logger.warn(error) except (ConnectRefusedError, ConnectTimeoutError) as cre: logger.warning('NETCONF connection error: {}'.format(cre)) return False - for instance in instances['configuration']['routing-instances']['instance']: - if instance['name'] == vrf: - _vrf_data = instance['routing-options'] for table in ['inet', 'inet6']: if table == 'inet6':