diff --git a/inventory_provider/tasks/worker.py b/inventory_provider/tasks/worker.py index dd1689d934ad5a39695e5ee5b509ff9716fab12a..70680acc7deb2268a3e0e3e075059b955a1d275b 100644 --- a/inventory_provider/tasks/worker.py +++ b/inventory_provider/tasks/worker.py @@ -659,10 +659,9 @@ def _build_service_category_interface_list(update_callback=lambda s: None): def _classify(ifc): if ifc['description'].startswith('SRV_MDVPN'): - return 'mdvpn' + yield 'mdvpn' if 'LHCONE' in ifc['description']: - return 'lhcone' - return None + yield 'lhcone' update_callback('loading all known interfaces') interfaces = data.build_service_interface_user_list(InventoryTask.config) @@ -674,13 +673,11 @@ def _build_service_category_interface_list(update_callback=lambda s: None): rp = r.pipeline() for ifc in interfaces: - service_type = _classify(ifc) - if not service_type: - continue - rp.set( - f'interface-services:{service_type}' - f':{ifc["router"]}:{ifc["interface"]}', - json.dumps(ifc)) + for service_type in _classify(ifc): + rp.set( + f'interface-services:{service_type}' + f':{ifc["router"]}:{ifc["interface"]}', + json.dumps(ifc)) rp.execute()