diff --git a/inventory_provider/tasks/worker.py b/inventory_provider/tasks/worker.py index 0083aee763dbc9df0c52fd9d273b9938c051c316..19c94dbdd1508ffcb4125550868956774d8136c2 100644 --- a/inventory_provider/tasks/worker.py +++ b/inventory_provider/tasks/worker.py @@ -200,6 +200,21 @@ def update_interface_statuses(): logger.debug('<<< update_interface_statuses') +@app.task +def update_geant_lambdas(): + logger = logging.getLogger(__name__) + logger.debug('>>> update_geant_lambdas') + + r = get_redis(InventoryTask.config) + for key in r.scan_iter('opsdb:geant_lambdas:*'): + r.delete(key) + with db.connection(InventoryTask.config["ops-db"]) as cx: + for ld in opsdb.get_geant_lambdas(cx): + r.set('opsdb:geant_lambdas:%s' % ld['name'], json.dumps(ld)) + + logger.debug('<<< geant_lambdas') + + @app.task(base=InventoryTask, bind=True) def update_junosspace_device_list(self): logger = logging.getLogger(__name__) @@ -457,6 +472,7 @@ def launch_refresh_cache_all(config): subtasks = [ update_junosspace_device_list.s(), update_interfaces_to_services.s(), + update_geant_lambdas.s(), update_circuit_hierarchy.s() ]