Skip to content

Commit

Permalink
[yang] Change asn to start from 0 for bgp monitor (sonic-net#15350)
Browse files Browse the repository at this point in the history
#### Why I did it
The asn 0 in BGP_MONITOR is invalid by YANG definition. However, the asn 0 in BGP_MONITOR is found in many devices. 
It was introduced by minigraph where its value is set to 0.
To unblock Config Updater test, the short term fix is to accept the asn 0 in BGP_MONITOR. 
We can revert this after NGS team make all the ASN change in minigraph.
##### Work item tracking
- Microsoft ADO **(24186140)**:

#### How I did it
Change the range
#### How to verify it
Unit test.
  • Loading branch information
wen587 authored and sonic-otn committed Sep 20, 2023
1 parent e8762c7 commit 3b262b3
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/sonic-yang-models/tests/files/sample_config_db.json
Original file line number Diff line number Diff line change
Expand Up @@ -1598,7 +1598,7 @@
"BGP_MONITORS": {
"5.6.7.8": {
"admin_status": "up",
"asn": "65000",
"asn": "0",
"holdtime": "180",
"keepalive": "60",
"local_addr": "10.0.0.11",
Expand Down
2 changes: 1 addition & 1 deletion src/sonic-yang-models/yang-models/sonic-bgp-common.yang
Original file line number Diff line number Diff line change
Expand Up @@ -534,7 +534,7 @@ module sonic-bgp-common {
grouping sonic-bgp-cmn-neigh {
leaf asn {
type uint32 {
range "1..4294967295";
range "0..4294967295";
}
description "Peer AS number";
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ module sonic-bgp-internal-neighbor {
must "(current() = /dm:sonic-device_metadata/dm:DEVICE_METADATA/dm:localhost/dm:bgp_asn)" {
error-message "Internal iBGP neighbors should have same ASN as defined in device metadata";
}
must ". >= 1" {
error-message "ASN must be greater than 0";
}
}
refine local_addr {
mandatory true;
Expand Down
8 changes: 7 additions & 1 deletion src/sonic-yang-models/yang-models/sonic-bgp-neighbor.yang
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,13 @@ module sonic-bgp-neighbor {
description "BGP Neighbor address";
}

uses bgpcmn:sonic-bgp-cmn-neigh;
uses bgpcmn:sonic-bgp-cmn-neigh {
refine asn {
must ". >= 1" {
error-message "ASN must be greater than 0";
}
}
}
}

list BGP_NEIGHBOR_LIST {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,9 @@ module sonic-bgp-voq-chassis-neighbor {
must "(current() = /dm:sonic-device_metadata/dm:DEVICE_METADATA/dm:localhost/dm:bgp_asn)" {
error-message "Voq chassis BGP neighbors should have same ASN as defined in device metadata";
}
must ". >= 1" {
error-message "ASN must be greater than 0";
}
}
refine local_addr {
mandatory true;
Expand Down

0 comments on commit 3b262b3

Please sign in to comment.