Commit d10de4fc authored by Pablo Armingol's avatar Pablo Armingol
Browse files

fix: allow SDP identification using either id or node-id in site creation and response building

parent ce0f6b10
Loading
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -39,13 +39,14 @@ def create_site_from_sdp(sdp, ietf_intent, connectivity_type, layer_type):
    router_id = safe_get(sdp, ["sdp", "attachment-circuits", "attachment-circuit", 0, "ac-node-id"])
    router_if = safe_get(sdp, ["sdp", "attachment-circuits", "attachment-circuit", 0, "ac-tp-id"])
    
    logging.debug(f"Configured site for SDP {safe_get(sdp, ['sdp', 'id'])} with location: {location}, router_id: {router_id}, router_if: {router_if}")
    sdp_id = safe_get(sdp, ["sdp", "id"]) or safe_get(sdp, ["sdp", "node-id"])
    logging.debug(f"Configured site for SDP {sdp_id} with location: {location}, router_id: {router_id}, router_if: {router_if}")
    
    network_access = create_network_access(sdp, ietf_intent, connectivity_type, router_id, router_if, layer_type)

    # Create site structure
    site = {
        "site-id": safe_get(sdp, ["sdp", "id"]),
        "site-id": sdp_id,
        "locations": {
            "location": [{"location-id": location}]
        },
+2 −2
Original line number Diff line number Diff line
@@ -49,8 +49,8 @@ def build_response(intent, response, controller_type = None):
    """
    
    id = safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"id"])
    source = safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",0,"id"])
    destination = safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",1,"id"])
    source = safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",0,"id"]) or safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",0,"node-id"])
    destination = safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",1,"id"]) or safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",1,"node-id"])
    vlan = safe_get(intent, ["ietf-network-slice-service:network-slice-services","slice-service",0,"sdps","sdp",0,"service-match-criteria","match-criterion",0,"match-type", 0, "vlan", 0])

    if not id or not source or not destination: