[yang-models] Add missing constraints in VLAN yang model#2
Closed
matiAlfaro wants to merge 12 commits intomasterfrom
Closed
[yang-models] Add missing constraints in VLAN yang model#2matiAlfaro wants to merge 12 commits intomasterfrom
matiAlfaro wants to merge 12 commits intomasterfrom
Conversation
added 2 commits
February 28, 2024 16:07
~ Signed-off-by: matiAlfaro <[email protected]>
Signed-off-by: matiAlfaro <[email protected]>
added 3 commits
March 3, 2024 12:35
Signed-off-by: matiAlfaro <[email protected]>
Signed-off-by: matiAlfaro <[email protected]>
Signed-off-by: matiAlfaro <[email protected]>
amazor
reviewed
Mar 5, 2024
added 3 commits
March 6, 2024 13:21
Fixed Problems/New Changes: src/sonic-yang-models/tests/files/sample_config_db.json Ethernet1 is member of PO3 which is already in Vlan Ethernet2 is member of PO4, so add it to Vlan src/sonic-config-engine/tests/simple-sample-graph-case-remap-disabled.xml src/sonic-config-engine/tests/simple-sample-graph-case-remap-enabled-no-tunnel-attributes.xml src/sonic-config-engine/tests/simple-sample-graph-case-remap-enabled.xml src/sonic-config-engine/tests/simple-sample-graph-case.xml fortyGigE0/4 is member of PortChannel01, so add port-channel to vlan src/sonic-config-engine/tests/t0-sample-graph-two-mgmt.xml src/sonic-config-engine/tests/t0-sample-graph.xml fortyGigE0/112;fortyGigE0/116;fortyGigE0/120 are members of PortChannel01;PortChannel02;PortChannel03, so add port-channel. ~ Signed-off-by: matiAlfaro <[email protected]>
Fixed Problems/New Changes:
src/sonic-yang-models/tests/files/sample_config_db.json
Ethernet1 is member of PO3 which is already in Vlan
Ethernet2 is member of PO4, so add it to Vlan
src/sonic-config-engine/tests/simple-sample-graph-case-remap-disabled.xml
src/sonic-config-engine/tests/simple-sample-graph-case-remap-enabled-no-tunnel-attributes.xml
src/sonic-config-engine/tests/simple-sample-graph-case-remap-enabled.xml
src/sonic-config-engine/tests/simple-sample-graph-case.xml
fortyGigE0/4 is member of PortChannel01, so add port-channel to vlan
src/sonic-config-engine/tests/t0-sample-graph-two-mgmt.xml
src/sonic-config-engine/tests/t0-sample-graph.xml
fortyGigE0/112;fortyGigE0/116;fortyGigE0/120 are members of PortChannel01;PortChannel02;PortChannel03, so add port-channel.
src/sonic-config-engine/tests/test_minigraph_case.py
Ethernet4 is member of PortChannel01, update test_minigraph_portchannels
~
Signed-off-by: matiAlfaro <[email protected]>
Signed-off-by: matiAlfaro <[email protected]>
added 4 commits
March 7, 2024 09:19
Signed-off-by: matiAlfaro <[email protected]>
Signed-off-by: matiAlfaro <[email protected]>
Signed-off-by: matiAlfaro <[email protected]>
shiraez
pushed a commit
that referenced
this pull request
Dec 11, 2024
…et#21095) Adding the below fix from FRR FRRouting/frr#17297 This is to fix the following crash which is a statistical issue [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `/usr/lib/frr/zebra -A 127.0.0.1 -s 90000000 -M dplane_fpm_nl -M snmp'. Program terminated with signal SIGABRT, Aborted. #0 0x00007fccd7351e2c in ?? () from /lib/x86_64-linux-gnu/libc.so.6 [Current thread is 1 (Thread 0x7fccd6faf7c0 (LWP 36))] (gdb) bt #0 0x00007fccd7351e2c in ?? () from /lib/x86_64-linux-gnu/libc.so.6 #1 0x00007fccd7302fb2 in raise () from /lib/x86_64-linux-gnu/libc.so.6 #2 0x00007fccd72ed472 in abort () from /lib/x86_64-linux-gnu/libc.so.6 #3 0x00007fccd75bb3a9 in _zlog_assert_failed (xref=xref@entry=0x7fccd7652380 <_xref.16>, extra=extra@entry=0x0) at ../lib/zlog.c:678 #4 0x00007fccd759b2fe in route_node_delete (node=<optimized out>) at ../lib/table.c:352 #5 0x00007fccd759b445 in route_unlock_node (node=0x0) at ../lib/table.h:258 #6 route_next (node=<optimized out>) at ../lib/table.c:436 #7 route_next (node=node@entry=0x56029d89e560) at ../lib/table.c:410 #8 0x000056029b6b6b7a in if_lookup_by_name_per_ns (ns=ns@entry=0x56029d873d90, ifname=ifname@entry=0x7fccc0029340 "PortChannel1020") at ../zebra/interface.c:312 #9 0x000056029b6b8b36 in zebra_if_dplane_ifp_handling (ctx=0x7fccc0029310) at ../zebra/interface.c:1867 #10 zebra_if_dplane_result (ctx=0x7fccc0029310) at ../zebra/interface.c:2221 #11 0x000056029b7137a9 in rib_process_dplane_results (thread=<optimized out>) at ../zebra/zebra_rib.c:4810 #12 0x00007fccd75a0e0d in thread_call (thread=thread@entry=0x7ffe8e553cc0) at ../lib/thread.c:1990 #13 0x00007fccd7559368 in frr_run (master=0x56029d65a040) at ../lib/libfrr.c:1198 sonic-net#14 0x000056029b6ac317 in main (argc=9, argv=0x7ffe8e5540d8) at ../zebra/main.c:478
VladimirKuk
pushed a commit
that referenced
this pull request
Jan 21, 2025
…et#21095) Adding the below fix from FRR FRRouting/frr#17297 This is to fix the following crash which is a statistical issue [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `/usr/lib/frr/zebra -A 127.0.0.1 -s 90000000 -M dplane_fpm_nl -M snmp'. Program terminated with signal SIGABRT, Aborted. #0 0x00007fccd7351e2c in ?? () from /lib/x86_64-linux-gnu/libc.so.6 [Current thread is 1 (Thread 0x7fccd6faf7c0 (LWP 36))] (gdb) bt #0 0x00007fccd7351e2c in ?? () from /lib/x86_64-linux-gnu/libc.so.6 #1 0x00007fccd7302fb2 in raise () from /lib/x86_64-linux-gnu/libc.so.6 #2 0x00007fccd72ed472 in abort () from /lib/x86_64-linux-gnu/libc.so.6 #3 0x00007fccd75bb3a9 in _zlog_assert_failed (xref=xref@entry=0x7fccd7652380 <_xref.16>, extra=extra@entry=0x0) at ../lib/zlog.c:678 #4 0x00007fccd759b2fe in route_node_delete (node=<optimized out>) at ../lib/table.c:352 #5 0x00007fccd759b445 in route_unlock_node (node=0x0) at ../lib/table.h:258 #6 route_next (node=<optimized out>) at ../lib/table.c:436 #7 route_next (node=node@entry=0x56029d89e560) at ../lib/table.c:410 #8 0x000056029b6b6b7a in if_lookup_by_name_per_ns (ns=ns@entry=0x56029d873d90, ifname=ifname@entry=0x7fccc0029340 "PortChannel1020") at ../zebra/interface.c:312 #9 0x000056029b6b8b36 in zebra_if_dplane_ifp_handling (ctx=0x7fccc0029310) at ../zebra/interface.c:1867 #10 zebra_if_dplane_result (ctx=0x7fccc0029310) at ../zebra/interface.c:2221 #11 0x000056029b7137a9 in rib_process_dplane_results (thread=<optimized out>) at ../zebra/zebra_rib.c:4810 #12 0x00007fccd75a0e0d in thread_call (thread=thread@entry=0x7ffe8e553cc0) at ../lib/thread.c:1990 #13 0x00007fccd7559368 in frr_run (master=0x56029d65a040) at ../lib/libfrr.c:1198 sonic-net#14 0x000056029b6ac317 in main (argc=9, argv=0x7ffe8e5540d8) at ../zebra/main.c:478
apannerselva
pushed a commit
that referenced
this pull request
Nov 5, 2025
…sue. (sonic-net#22342) Fix TACACS config revert to old config when device reboot issue. #### Why I did it Fix following bug: 1. When SONiC OS upgrade, old TACACS config will save to /etc/sonic/old_config/tacacs.json 2. After device reboot, TACACS config service (https://github.com/sonic-net/sonic-buildimage/blob/master/files/build_templates/tacacs-config.service) will restore TACACS config from /etc/sonic/old_config/tacacs.json, but this file will keep no change after restore TACACS config. 3. If TACACS service changed by user, because of #2, if device reboot again, the TACACS config been reverted back to old config in /etc/sonic/old_config/tacacs.json Note: the TACACS config does not revert immediately after reboot, it will delay 5min 30sec: https://github.com/sonic-net/sonic-buildimage/blob/master/files/build_templates/tacacs-config.timer ##### Work item tracking - Microsoft ADO **(number only)**:32338799 #### How I did it Move /etc/sonic/old_config/tacacs.json to /etc/sonic/old_config/tacacs.json_backup #### How to verify it Pass all test case. Manually verify with following steps: admin@vlab-01:~$ show tacacs TACPLUS global auth_type login TACPLUS global timeout 5 (default) TACPLUS global passkey testing123 TACPLUS_SERVER address 10.250.0.102 priority 1 tcp_port 49 admin@vlab-01:~$ echo ' > { > "TACPLUS": {"global": { "auth_type": "login", "passkey": "12345" } } > }' > /etc/sonic/old_config/tacacs.json admin@vlab-01:~$ cat /etc/sonic/old_config/tacacs.json { "TACPLUS": {"global": { "auth_type": "login", "passkey": "12345" } } } // then reboot device and wait for 6 minutes, because the TACACS config service will delay 5min 30sec after reboot: https://github.com/sonic-net/sonic-buildimage/blob/master/files/build_templates/tacacs-config.timer admin@vlab-01:~$ ls /etc/sonic/old_config/tacacs.json ls: cannot access '/etc/sonic/old_config/tacacs.json': No such file or directory admin@vlab-01:~$ show tacacs TACPLUS global auth_type login TACPLUS global timeout 5 (default) TACPLUS global passkey 12345 TACPLUS_SERVER address 10.250.0.102 priority 1 tcp_port 49 #### Description for the changelog Fix TACACS config revert to old config when device reboot issue.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implement constraints as described in 12256 (sonic-buildimage)
If vlan id already exists, do not allow duplicitous write to ConfigDB
No changes are required, name is key so it will be unique
Do not allow removal of vlan interface if vlan has IP address assigned
No chnage is needed since both VLAN_INTERFACE_LIST and VLAN_INTERFACE_IPPREFIX_LIST reference /vlan:sonic-vlan/vlan:VLAN/vlan:VLAN_LIST/vlan:name
No chnage is needed since VLAN_MEMBER_LIST refereces "/vlan:sonic-vlan/vlan:VLAN/vlan:VLAN_LIST/vlan:name"
If interface naming mode is alias, make sure corresponding port name exists
sonic-yang doesn't support adding a ports using alias
Make sure port is not configured as a mirror destination port
Make sure port is not already a vlan member
No change is needed, <vlan,port> is the key for VLAN_MEMBER_LIST
Make sure port is not a router interface
Verify Vlan name matches vlanid
Why I did it
Work item tracking
How I did it
How to verify it
Added tests to verify all modified and added constraints.
Which release branch to backport (provide reason below if selected)
Tested branch (Please provide the tested image version)
Description for the changelog
Link to config_db schema for YANG module changes
A picture of a cute animal (not mandatory but encouraged)