Skip to content

Add playbook to reinstall sonic through onie#150

Merged
stcheng merged 1 commit intomasterfrom
taoyl/boot_onie
Mar 24, 2017
Merged

Add playbook to reinstall sonic through onie#150
stcheng merged 1 commit intomasterfrom
taoyl/boot_onie

Conversation

@taoyl-ms
Copy link
Copy Markdown
Contributor

No description provided.

@stcheng stcheng merged commit 5ceeaeb into master Mar 24, 2017
@stcheng stcheng deleted the taoyl/boot_onie branch March 24, 2017 00:14
zhixzhu pushed a commit to zhixzhu/sonic-mgmt that referenced this pull request May 1, 2025
…ssive in test_container_checker.py (sonic-net#150)

<!--
Please make sure you've read and understood our contributing guidelines;
https://github.com/sonic-net/SONiC/blob/gh-pages/CONTRIBUTING.md

Please provide following information to help code review process a bit easier:
-->
### Description of PR
<!--
- Please include a summary of the change and which issue is fixed.
- Please also include relevant motivation and context. Where should reviewer start? background context?
- List any dependencies that are required for this change.
-->

Summary:
Fixes sonic-net#17113

### Type of change

<!--
- Fill x for your type of change.
- e.g.
- [x] Bug fix
-->

- [x] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
 - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

### Back port request
- [ ] 202012
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [x] 202405
- [x] 202411

### Approach
#### What is the motivation for this PR?
Fix test failures in `test_container_checker.py` caused by config reload being successive in teardown.
#### How did you do it?
Change config reload from successive to parallel
#### How did you verify/test it?
Tested on platform that was previously failing due to bug
#### Any platform specific information?
N/A
#### Supported testbed topology if it's a new test case?
N/A
### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
StormLiangMS pushed a commit that referenced this pull request Jul 15, 2025
Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic #150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Jul 15, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
mssonicbld pushed a commit that referenced this pull request Jul 15, 2025
Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic #150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
sdszhang pushed a commit to sdszhang/sonic-mgmt that referenced this pull request Aug 2, 2025
…4.x version (sonic-net#539)

<!--
Please make sure you've read and understood our contributing guidelines;
https://github.com/sonic-net/SONiC/blob/gh-pages/CONTRIBUTING.md

Please provide following information to help code review process a bit easier:
-->
### Description of PR
<!--
- Please include a summary of the change and which issue is fixed.
- Please also include relevant motivation and context. Where should reviewer start? background context?
- List any dependencies that are required for this change.
-->

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.
```
vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

 def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
 """
 Verify ipv4 or ipv6 route propagate status
 :param vmhost: vm host object
 :param route_list: ipv4 or ipv6 route list
 :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
 :param vrf: vrf name
 :param ip_ver: ip version number
 :param exist: route expected status
 """
 if exist:
 pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
 "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
 else:
> pytest_assert(
 wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
 "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

```

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:
```
root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root : /root/env-python3
root@99cb0373d021:~#

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810 | api | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
```

### Type of change

<!--
- Fill x for your type of change.
- e.g.
- [x] Bug fix
-->

- [ ] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [ ] New Test case
 - [ ] Skipped for non-supported platforms
- [ ] Test case improvement

### Back port request
- [ ] 202205
- [ ] 202305
- [ ] 202311
- [ ] 202405
- [ ] 202411
- [x] 202505

### Approach
#### What is the motivation for this PR?
Fix test_bgp_suppress_fib.py failure

#### How did you do it?
use `withdraw attributes` which works for both exabgp 3.x and 4.x version.

#### How did you verify/test it?

Result on exabgp 4.x version:
```
04:42:34 | 810 | api | route added to neighbor 10.10.247.2 local-ip 10.10.246.254 local-as 64032 peer-as 64032 router-id 10.10.246.254 family-allowed in-open : 91.0.1.0/25 next-hop self
04:42:48 | 810 | api | route removed from neighbor 10.10.247.2 local-ip 10.10.246.254 local-as 64032 peer-as 64032 router-id 10.10.246.254 family-allowed in-open : 91.0.1.0/25 next-hop self
```

Result on exabgp 3.x version:
```
==> exabgp-ARISTA09T0.out.log <==
Mon, 14 Jul 2025 04:42:20 | INFO | 817 | processes | Command from process http-api : announce attributes next-hop self nlri 91.0.1.0/25
Mon, 14 Jul 2025 04:42:20 | INFO | 817 | reactor | Route added to neighbor 10.10.246.10 local-ip 10.10.246.254 local-as 64002 peer-as 64002 router-id 10.10.246.254 family-allowed in-open : 91.0.1.0/25 next-hop 10.10.246.254
Mon, 14 Jul 2025 04:42:21 | INFO | 817 | reactor | Performing dynamic route update
Mon, 14 Jul 2025 04:42:21 | INFO | 817 | reactor | Updated peers dynamic routes successfully

==> exabgp-ARISTA09T0.out.log <==
Mon, 14 Jul 2025 04:42:25 | INFO | 817 | processes | Command from process http-api : withdraw attributes next-hop self nlri 91.0.1.0/25
Mon, 14 Jul 2025 04:42:25 | INFO | 817 | reactor | Route removed : 91.0.1.0/25 next-hop 10.10.246.254
Mon, 14 Jul 2025 04:42:26 | INFO | 817 | reactor | Performing dynamic route update
Mon, 14 Jul 2025 04:42:26 | INFO | 817 | reactor | Updated peers dynamic routes successfully
```

#### Any platform specific information?

#### Supported testbed topology if it's a new test case?

### Documentation
<!--
(If it's a new feature, new test case)
Did you update documentation/Wiki relevant to your implementation?
Link to the wiki page?
-->
nissampa pushed a commit to nissampa/sonic-mgmt_dpu_test that referenced this pull request Aug 7, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
ashutosh-agrawal pushed a commit to ashutosh-agrawal/sonic-mgmt that referenced this pull request Aug 14, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
vidyac86 pushed a commit to vidyac86/sonic-mgmt that referenced this pull request Oct 23, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
opcoder0 pushed a commit to opcoder0/sonic-mgmt that referenced this pull request Dec 8, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25

Signed-off-by: opcoder0 <110003254+opcoder0@users.noreply.github.com>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Dec 16, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~#

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25

Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
AharonMalkin pushed a commit to AharonMalkin/sonic-mgmt that referenced this pull request Dec 16, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~#

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25

Signed-off-by: Aharon Malkin <amalkin@nvidia.com>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Dec 21, 2025
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~#

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25

Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
venu-nexthop pushed a commit to venu-nexthop/sonic-mgmt that referenced this pull request Jan 13, 2026
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Jan 26, 2026
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~#

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25

Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
ytzur1 pushed a commit to ytzur1/sonic-mgmt that referenced this pull request Feb 2, 2026
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~#

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25

Signed-off-by: Yael Tzur <ytzur@nvidia.com>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
This PR includes the following commit in sonic-platform-daemons

068bccc [xcvrd] Store mux_cable telemetry data in State DB (sonic-net#148)
93cac0a [ci]: download from sonic-buildimage.vs artifact (sonic-net#152)
d651e9b [GitHub] Add pull request template (sonic-net#151)
bd7830b [pcied] Remove unnecessary message and move the configuration path (sonic-net#144)
9080fda [ci] Call pip2/3 using sudo (sonic-net#150)
de60784 [ci] Test and build packages using Azure Pipelines (sonic-net#149)
8bf0fd1 [ledd] Refactor to allow for more thorough unit testing; Increase unit test coverage (sonic-net#147)
26bdc9e Set up CI with Azure Pipelines
1fcaa57 [pcied] Add PCIe AER stats collection (sonic-net#100)

Signed-off-by: vaibhav-dahiya <vdahiya@microsoft.com>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…n] update submodule head (sonic-net#12594)

linkmgrd:
* 8e9e49b 2022-11-02 | [active-standby][active-active] update link prober stats updating frequency to 30s (sonic-net#152) (HEAD -> 202205) [Jing Zhang]
* 1ad3f18 2022-11-01 | [Active-Active] periodically re-sync soc side admin forwarding state  (sonic-net#151) [Jing Zhang]
* cfcdb76 2022-11-01 | [202205] incrementing icmp buffer size (sonic-net#150) [Jing Zhang]

swss:
* ac7570a 2022-11-03 | [Dynamic buffer calculation][Mellanox] Enhance the logic to identify buffer pools and profiles (sonic-net#2498) (HEAD -> 202205) [Stephen Sun]

swss-common:
* 300fc8f 2022-10-31 | [sonic-db-cli] Fix sonic-db-cli crash when database config file not ready issue. (sonic-net#701) (HEAD -> 202205) [Hua Liu]

platform-daemon:
* cd1608a 2022-10-28 | [ycabled] add support for detach mode in 'active-active' topology (sonic-net#309) (HEAD -> 202205) [vdahiya12]
* 2a5f0f4 2022-10-27 | Added filtering logic to send filtered fields from DB event (sonic-net#307) [mihirpat1]

platform-common:
* b521882 2022-10-30 |  CmisApi::get_application_advertisement catch AttributeError as well (sonic-net#316) (HEAD -> 202205) [Stephen Sun]

Signed-off-by: Ying Xie <ying.xie@microsoft.com>

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
kazinator-arista pushed a commit to kazinator-arista/sonic-mgmt that referenced this pull request Mar 4, 2026
…utomatically (sonic-net#20289)

#### Why I did it
src/sonic-host-services
```
* 37039d3 - (HEAD -> 202311, origin/202311) [BFD]Fix BFD blackout issue (sonic-net#150) (7 hours ago) [Sudharsan Dhamal Gopalarathnam]
```
#### How I did it
#### How to verify it
#### Description for the changelog
venu-nexthop pushed a commit to venu-nexthop/sonic-mgmt that referenced this pull request Mar 27, 2026
…et#19575)

Summary:
With exabgp version 4.x, it doesn't accept "withdraw attribute", only accepting "withdraw attributes". The issue has been fixed in Exa-Networks/exabgp@2946f34, but it's not included in 4.2.x version yet.
When running test_bgp_suppress_fib.py test case, it will failed to withdraw the routes, and result in following failures.

vmhost = <EosHost VM92012>, route_list = ['91.0.1.0/24', '91.0.2.0/24']
bgp_neighbor = '10.0.0.192', vrf = 'default', ip_ver = 4, exist = False

    def validate_route_propagate_status(vmhost, route_list, bgp_neighbor, vrf=DEFAULT, ip_ver=IP_VER, exist=True):
        """
        Verify ipv4 or ipv6 route propagate status
        :param vmhost: vm host object
        :param route_list: ipv4 or ipv6 route list
        :param bgp_neighbor: ipv4 or ipv6 bgp neighbor address
        :param vrf: vrf name
        :param ip_ver: ip version number
        :param exist: route expected status
        """
        if exist:
            pytest_assert(wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver),
                          "Vrf:{} - route:{} is not propagated to T2 VM {}".format(vrf, route_list, vmhost))
        else:
>           pytest_assert(
                wait_until(30, 2, 0, check_propagate_route, vmhost, route_list, bgp_neighbor, ip_ver, ACTION_NOT_IN),
                "Vrf:{} - route:{} is propagated to T2 VM {}".format(vrf, route_list, vmhost))
E           Failed: Vrf:default - route:['91.0.1.0/24', '91.0.2.0/24'] is propagated to T2 VM <EosHost VM92012>

With the recent PTF upgrade, we'd better to "withdraw attributes" to work with 4.x version instead of waiting for a new exabgp release.

Here is the output on exabgp 4.x version:

root@99cb0373d021:~# exabgp --version
ExaBGP : 4.2.25
Python : 3.11.2 (main, Apr 28 2025, 14:11:48) [GCC 12.2.0]
Uname  : Linux 99cb0373d021 5.15.0-140-generic sonic-net#150-Ubuntu SMP Sat Apr 12 06:00:09 UTC 2025 x86_64
Root   : /root/env-python3
root@99cb0373d021:~# 

==> exabgp-ARISTA249T0.out.log <==
......
03:46:59 | 810    | api             | command from process not understood : withdraw attribute next-hop self nlri 91.0.1.0/25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants