mirror of
https://github.com/Telecominfraproject/ols-nos.git
synced 2025-12-05 15:35:33 +00:00
[yang]: SONiC Yang model for PORTCHANNEL_INTERFACE table (#7034)
* SONiC Yang model for PORTCHANNEL_INTERFACE table Signed-off-by: Arthi Sivanantham <arthi_sivanantham@dell.com>
This commit is contained in:
@@ -65,6 +65,14 @@ class Test_yang_models:
|
|||||||
'desc': 'Configure a member port in PORT_CHANNEL table.',
|
'desc': 'Configure a member port in PORT_CHANNEL table.',
|
||||||
'eStr': self.defaultYANGFailure['None']
|
'eStr': self.defaultYANGFailure['None']
|
||||||
},
|
},
|
||||||
|
'PORTCHANNEL_INTERFACE_IP_ADDR_TEST': {
|
||||||
|
'desc': 'Configure IP address on PORTCHANNEL_INTERFACE table.',
|
||||||
|
'eStr': self.defaultYANGFailure['None']
|
||||||
|
},
|
||||||
|
'PORTCHANNEL_INTERFACE_IP_ADDR_ON_NON_EXIST_PO': {
|
||||||
|
'desc': 'Configure IP address on a non existent PortChannel.',
|
||||||
|
'eStr': self.defaultYANGFailure['LeafRef']
|
||||||
|
},
|
||||||
'VLAN_MEMEBER_WITH_NON_EXIST_VLAN': {
|
'VLAN_MEMEBER_WITH_NON_EXIST_VLAN': {
|
||||||
'desc': 'Configure vlan-id in VLAN_MEMBER table which does not exist in VLAN table.',
|
'desc': 'Configure vlan-id in VLAN_MEMBER table which does not exist in VLAN table.',
|
||||||
'eStr': self.defaultYANGFailure['LeafRef']
|
'eStr': self.defaultYANGFailure['LeafRef']
|
||||||
|
|||||||
@@ -137,6 +137,39 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"PORTCHANNEL_INTERFACE_IP_ADDR_TEST": {
|
||||||
|
"sonic-portchannel:sonic-portchannel": {
|
||||||
|
"sonic-portchannel:PORTCHANNEL": {
|
||||||
|
"PORTCHANNEL_LIST": [{
|
||||||
|
"name": "PortChannel0001",
|
||||||
|
"admin_status": "up"
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
"sonic-portchannel:PORTCHANNEL_INTERFACE": {
|
||||||
|
"PORTCHANNEL_INTERFACE_IPPREFIX_LIST": [{
|
||||||
|
"name": "PortChannel0001",
|
||||||
|
"ip_prefix": "1.1.1.1/24"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"PORTCHANNEL_INTERFACE_IP_ADDR_ON_NON_EXIST_PO": {
|
||||||
|
"sonic-portchannel:sonic-portchannel": {
|
||||||
|
"sonic-portchannel:PORTCHANNEL": {
|
||||||
|
"PORTCHANNEL_LIST": [{
|
||||||
|
"name": "PortChannel0001"
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
"sonic-portchannel:PORTCHANNEL_INTERFACE": {
|
||||||
|
"PORTCHANNEL_INTERFACE_IPPREFIX_LIST": [{
|
||||||
|
"name": "PortChannel0002",
|
||||||
|
"ip_prefix": "2.2.2.2/24"
|
||||||
|
}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
"PORT_CHANNEL_WRONG_PATTERN": {
|
"PORT_CHANNEL_WRONG_PATTERN": {
|
||||||
"sonic-portchannel:sonic-portchannel": {
|
"sonic-portchannel:sonic-portchannel": {
|
||||||
"sonic-portchannel:PORTCHANNEL": {
|
"sonic-portchannel:PORTCHANNEL": {
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ module sonic-acl {
|
|||||||
|
|
||||||
import sonic-portchannel {
|
import sonic-portchannel {
|
||||||
prefix lag;
|
prefix lag;
|
||||||
revision-date 2019-07-01;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
description "ACL YANG Module for SONiC OS";
|
description "ACL YANG Module for SONiC OS";
|
||||||
|
|||||||
@@ -22,10 +22,15 @@ module sonic-portchannel {
|
|||||||
|
|
||||||
description "PORTCHANNEL yang Module for SONiC OS";
|
description "PORTCHANNEL yang Module for SONiC OS";
|
||||||
|
|
||||||
|
revision 2021-03-15 {
|
||||||
|
description "Add SONiC PortChannel Interface model";
|
||||||
|
}
|
||||||
|
|
||||||
revision 2019-07-01 {
|
revision 2019-07-01 {
|
||||||
description "First Revision";
|
description "First Revision";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
container sonic-portchannel {
|
container sonic-portchannel {
|
||||||
container PORTCHANNEL {
|
container PORTCHANNEL {
|
||||||
|
|
||||||
@@ -85,6 +90,30 @@ module sonic-portchannel {
|
|||||||
|
|
||||||
} /* end of container PORTCHANNEL */
|
} /* end of container PORTCHANNEL */
|
||||||
|
|
||||||
|
|
||||||
|
container PORTCHANNEL_INTERFACE {
|
||||||
|
|
||||||
|
description "PORTCHANNEL_INTERFACE part of config_db.json";
|
||||||
|
|
||||||
|
list PORTCHANNEL_INTERFACE_IPPREFIX_LIST {
|
||||||
|
|
||||||
|
key "name ip_prefix";
|
||||||
|
|
||||||
|
leaf name {
|
||||||
|
/* key elements are mandatory by default */
|
||||||
|
type leafref {
|
||||||
|
path "/lag:sonic-portchannel/lag:PORTCHANNEL/lag:PORTCHANNEL_LIST/lag:name";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
leaf ip_prefix {
|
||||||
|
/* key elements are mandatory by default */
|
||||||
|
type stypes:sonic-ip-prefix;
|
||||||
|
}
|
||||||
|
} /* end of list PORTCHANNEL_INTERFACE_IPPREFIX_LIST */
|
||||||
|
|
||||||
|
} /* end of container PORTCHANNEL_INTERFACE */
|
||||||
|
|
||||||
} /* end of container sonic-portchannel */
|
} /* end of container sonic-portchannel */
|
||||||
|
|
||||||
} /* end of module sonic-port */
|
} /* end of module sonic-portchannel */
|
||||||
|
|||||||
@@ -44,6 +44,13 @@ module sonic-types {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
typedef sonic-ip-prefix {
|
||||||
|
type union {
|
||||||
|
type sonic-ip4-prefix;
|
||||||
|
type sonic-ip6-prefix;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
typedef admin_status {
|
typedef admin_status {
|
||||||
type enumeration {
|
type enumeration {
|
||||||
enum up;
|
enum up;
|
||||||
|
|||||||
Reference in New Issue
Block a user