From 377130aa301f1c701ac38a5d5d51298441dd49e0 Mon Sep 17 00:00:00 2001 From: Sam Haberkorn Date: Fri, 1 Nov 2024 17:11:26 +0000 Subject: [PATCH] update generate_templates --- generate_templates.py | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/generate_templates.py b/generate_templates.py index 11aab66..e90036a 100644 --- a/generate_templates.py +++ b/generate_templates.py @@ -273,7 +273,7 @@ def generate_body(devicemap): ) def_route_exists = False for index, dev_intf in enumerate(devicemap["ethernet"]): - if dev_intf["type"] == "MGMT": + if dev_intf["type"] in ["MGMT", "SWITCH"]: continue intf = {"pciAddress": dev_intf["pciAddress"]} if dev_intf.get("pciAddress") else {} intf.update({ @@ -424,8 +424,7 @@ def img_exists(vendor, model): def resolve_alias(devicemap, sku_map): if not devicemap.get("alias"): return devicemap - if not (devicemap.get("ethernet") or devicemap.get("lte")): - return None + alias_map = resolve_alias( lookup_devicemap( devicemap["alias"]["vendor"], @@ -434,8 +433,25 @@ def resolve_alias(devicemap, sku_map): ), sku_map, ) - del devicemap["alias"] - alias_map.update(devicemap) + method = device_map["alias"].get("method", "") + + del device_map["alias"] + + if not alias_map.get("ethernet"): + alias_map["ethernet"] = [] + if not alias_map.get("lte"): + alias_map["lte"] = [] + + if method.lower() == "append": + try: + alias_map["ethernet"].extend(device_map.pop("ethernet")) + except KeyError: + pass + try: + alias_map["lte"].extend(device_map.pop("lte")) + except KeyError: + pass + return alias_map def lookup_devicemap(vendor, sku, sku_map):