Commit Graph

5975 Commits

Author SHA1 Message Date
Andriy Yurkiv
1334c0447f [yang] add yang options for Context object (#10359)
#### Why I did it
Need to pass LY_CTX_DISABLE_SEARCHDIR_CWD to Context in order to disable automatically searching for schemas in current working directory (which is by default searched automatically)

#### How I did it
add additional attribute into YANG context

#### How to verify it
Create some invalid link on switch :
1) **ln -s /usr/abc xxx**
2) run **spm list**
--> There should not be these messages:
```
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
libyang[1]: Unable to get information about "xxx" file in "/tmp" when searching for (sub)modules (No such file or directory)
```
2022-05-07 23:16:37 -07:00
Judy Joseph
b3f42feeaf Update sonic-swss, sonic-utilities submodules
swss
f71c57e [ACL]Avoid incrementing crm count when ACL rule create fails (#2238)

utilities
8a93fde Allow fw update for other boot type against on the previous "none" boot fw update (#2040)
5837559 [show] fix get routing stack routine (#2137)
c888f29 [techsupport] improve robustness (#2117)
2022-05-01 23:20:41 -07:00
Shilong Liu
482f45e28f [build] docker-sonic-mgmt replace USER by whoami (#9702) 2022-05-01 23:16:26 -07:00
xumia
a55ba095db Fix the build target error when building sonic-rest-api (#10693)
Why I did it
Fix target target/debs/bullseye/sonic-rest-api_1.0.1_arm64.deb not existing issue, the correct target is target/debs/bullseye/sonic-rest-api_1.0.1_armhf.deb.
Fix issue: #9896

[ FAIL LOG START ] [ target/debs/stretch/sonic-rest-api_1.0.1_amd64.deb ]
[ REASON ] :      target/debs/stretch/sonic-rest-api_1.0.1_amd64.deb does not exist   NON-EXISTENT PREREQUISITES: 
[ FLAGS  FILE    ] : []
2022-05-01 23:16:22 -07:00
shlomibitton
94f271c667 [Fastboot] Delay LLDP service for better fastboot performance (#10568)
- Why I did it
Profiling the system state on init after fast-reboot during create_switch function execution, it is possible to see few python scripts running at the same time.
This parallel execution consume CPU time and the duration of create_switch is longer than it should be.
Following this finding, and the motivation to ensure these services will not interfere in the future, LLDP is delayed in 90 seconds until the system finish the init flow after fastboot.

- How I did it
Add a timer for LLDP service.
Copy the timer file to the host bin image.

- How to verify it
Run fast-reboot on MLNX platform and observe faster create_switch execution time.
This PR is dependent on PR: #10567
2022-05-01 23:16:18 -07:00
Saikrishna Arcot
f1ec7107cb Remove SSH host keys after installing the custom version of sshd (#10633)
* Remove SSH host keys after installing the custom version of sshd

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>

* Use an override for for sshd instead of overwriting the service file

Don't overwrite upstream's .service file, and instead use an override
file for making sure the host key(s) are generated.

Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2022-05-01 23:16:14 -07:00
mssonicbld
e2a2b30676
[ci/build]: Upgrade SONiC package versions (#10722) 2022-05-01 22:40:25 +00:00
mssonicbld
ff48ad4e9b
[ci/build]: Upgrade SONiC package versions (#10658) 2022-04-29 22:37:55 +00:00
Shilong Liu
0d8b769bae
[CG] Fix CG alert about underscore version. (#10706) 2022-04-29 13:40:13 +08:00
Shilong Liu
89d84704a9
[submodule] Update submodule for sonic-mgmt-common (#10671) 2022-04-28 13:40:59 +08:00
Stephen Sun
a68eaebe9d
[202111] [submodule] Advance sonic-platform-daemons pointer (#10673)
e46b243b Fix checkReplyType failed issue via recreating xcvr_table_helper on forking subprocess (#255) (#256)

Signed-off-by: Stephen Sun <stephens@nvidia.com>
2022-04-27 19:37:34 +03:00
Petro Bratash
8f0519b4b3
[BFN] Update configuration files (#10588) 2022-04-27 09:21:47 -07:00
xumia
e950fac740
[Submodule]: update submodule for sonic-restapi (#10682)
Why I did it
Update submodule sonic-restapi
e83e0e8 Fix Ctype_char larger than address space issue in 32-bit armhf (#107)
2022-04-27 07:15:41 +08:00
Judy Joseph
7e18f4c4a1 Update sonic-swss submodule
fc29641 [pbh] [aclorch] Fixed a bug causes by updating the flow-counter value for the PBH rule (#2226)
6c38ef7 [QoS] Resolve an issue in the sequence where a referenced object removed and then the referencing object deleting and then re-adding (#2210)
2022-04-24 21:19:17 -07:00
Junchao-Mellanox
ccc8c58c9c [Mellanox] Adjust PSU voltage WA (#10619)
- Why I did it
InvalidPsuVolWA.run might raise exception if user power off PSU when it is running. This exception is not caught and will be raised to psud which causes psud failed to update PSU data to DB.

- How I did it
1. Change the log level when WA does not work. This could happen when user power off PSU, hence changing the log level from error to warning is better
2. Change the wait time from 5 to 1 to avoid introduce too much delay in psud. 1 second is usually enough per my test
3. Give a default return value for function get_voltage_low_threshold and get_voltage_high_threshold to avoid exception reach to psud

- How to verify it
Manual test.
Run sonic-mgmt regression
2022-04-24 21:14:04 -07:00
Shilong Liu
0dff46b6bc Fix docker-sonic-mgmt reproducible related issue. (#9647)
Reproducible build script breaks docker-sonic-mgmt build.
2022-04-24 21:13:55 -07:00
xumia
03f1b87e65 [Ci]: Support to sign image for cisco-8000 uefi secure boot (#10616)
Why I did it
[Ci]: Support to sign image for cisco-8000 uefi secure boot
2022-04-24 21:13:41 -07:00
Vadym Hlushko
c62251b658 [install.sh] Fixed the sed pattern to match the current image revision (#9813)
#### Why I did it
The test plan described in the `How to verify it` section caused an issue when 3 images (instead of 2) were present when executing `show boot` or `sonic-installer list` commands:
```
root@sonic:/home/admin# show boot
Current: SONiC-OS-master.0-dirty-20220118.165941
Next: SONiC-OS-master.0-dirty-20220118.165941
Available: 
SONiC-OS-master.0-dirty-20220118.165941
SONiC-OS-202012.201-a0376a6e5_Internal
SONiC-OS-202012.201-a0376a6e5_Internal_RPC
```
#### How I did it
Fixed the `sed` pattern to match the current image revision in the `install.sh` script.

#### How to verify it
Test plan:
1. Install the `imageA` by using ONIE
2. Install the `imageA-rpc` by using `sonic-installer`
3. Reboot the switch
4. Swap to the `imageA` - `sonic-installer set-default imageA`
5. Reboot the switch
6. Install  the `imageB` by using `sonic-installer`
7. Check an installed images - `show boot`
8. Reboot the switch
9. Check an installed images - `show boot`
2022-04-24 21:13:37 -07:00
Sachin Naik
749bbb6ea4 secureboot: Enable signing SONiC kernel (#10557)
Why I did it
To sign SONiC kernel image and allow secure boot based system to verify SONiC image before loading into the system.

How I did it
Pass following parameter to rules/config.user
Ex:
SONIC_ENABLE_SECUREBOOT_SIGNATURE := y
SIGNING_KEY := /path/to/key/private.key
SIGNING_CERT := /path/to/public/public.cert

How to verify it
Secure boot enabled system enrolled with right public key of the, image in the platform UEFI database will able to verify image before load.

Alternatively one can verify with offline sbsign tool as below.

export SBSIGN_KEY=/abc/bcd/xyz/
sbverify --cert $SBSIGN_KEY/public_cert.cert fsroot-platform-XYZ/boot/vmlinuz-5.10.0-8-2-amd64 mage

O/P:
Signature verification OK
2022-04-24 21:13:32 -07:00
Shilong Liu
4280a2365d
[CG-Fix-CVE-2021-44906] Patching on thrift.0.14.1 for package minimist (#10555) (#10650)
* [CG-Fix-CVE-2021-44906] Patching on thrift.0.14.1 for package minimist

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

* add more information in patch

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

* Update 0003-Remove-minimist-packages.patch

* change the thrift 0.14.1 to package download

Signed-off-by: richardyu-ms <richard.yu@microsoft.com>

* use the series file for patching

* fix a code defect

Co-authored-by: Richard.Yu <richard.yu@microsoft.com>
2022-04-23 13:55:52 +08:00
mssonicbld
b7d77c7193
[ci/build]: Upgrade SONiC package versions (#10653) 2022-04-23 00:43:12 +00:00
ganglv
a4597396c2
[yang]: Update yang models to support 'cluster' (#10597)
Why I did it
Minigraph parser added a new field 'cluster' to device_metadata, and then yang validation is blocked.

How I did it
Add 'cluster' to device_metadata yang models.

How to verify it
Run UT for sonc-yang-models.
Use minigraph parser to generate ConfigDB schema and run yang validation.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-21 17:20:36 +08:00
ganglv
0526ff98f2
[yang] Update device_metadata to add dhcp_server (#10598)
Why I did it
dhcp_server is introduced, and need to update yang model.

How I did it
Update yang models and add unit test.

How to verify it
Run unit test for sonic-yang-models.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-21 08:39:35 +08:00
Samuel Angebault
df8eaa0544 [Arista] Fix arista-net initramfs hook
The interface renaming logic fails if one interface is missing.
Because of the `set -e` the whole initramfs hook would abort early on
error.
This change fixes the current behavior to make sure missing interfaces
are properly skipped and ensure existing interface are renamed.
2022-04-20 10:04:21 -07:00
Samuel Angebault
eaf9a0bde8 [Arista] rename management interface in initrd (#9856)
On some products the pci enumeration adds randomness into which nic gets
initialized first.
Because SONiC doesn't use deterministic interface naming but instead old
style interface naming, this leads to eth0 not always being the
management port.
To make sure eth0 is always the management port (SONiC expectation)
rename the interfaces in the initramfs for Arista products.
2022-04-20 10:04:21 -07:00
mssonicbld
ae6caab040
[ci/build]: Upgrade SONiC package versions (#10521)
Upgrade SONiC Versions
2022-04-20 12:19:56 +08:00
Judy Joseph
9f52080516 Update sonic-utilities submodule 2022-04-18 08:39:07 -07:00
Junchao-Mellanox
bdbb3d708d [Mellanox] Auto correct PSU voltage threshold (WA) (#10394)
- Why I did it
There is a hardware bug that PSU voltage threshold sysfs returns incorrect value. The workaround is to call "sensor -s" to refresh it.

- How I did it
Call "sensor -s" when the threshold value is not incorrect and PSU is "DELTA 1100"

- How to verify it
Unit test and Manual test
2022-04-17 23:11:35 -07:00
ganglv
bf34b17d20 [yang]: Add support for BmcMgmtToRRouter (#10488)
Why I did it
minigraph parser has introduced new type.

How I did it
Update yang models to support BmcMgmtToRRouter.

How to verify it
Run unit test for sonic-yang-models

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:24 -07:00
ganglv
1ad75641cb [sonic-cfggen]: Add port speed for UT (#10483)
Why I did it
Need to run yang validation for sonic-cfggen unit test, and many unit test does not provide speed for port table.

How I did it
Update minigraph xml.

How to verify it
Run sonic-cfggen unit test.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:21 -07:00
ganglv
03bbae39c0 [sonic-cfggen]: Update unit test to remove asn 0 (#10454)
Why I did it
ASN range is from 1 to 4294967295, need to remove invalid ASN.

How I did it
Update unit test and replace ASN 0.

How to verify it
Run unit test for sonic-config-engine.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:17 -07:00
ganglv
2404c201ba [sonic-cfggen] Fix invalid switch_type (#10383)
Why I did it
sonic-config-engine unit test is using invalid switch_type

How I did it
Update xml with correct switch_type

How to verify it
Run UT for sonic-config-engine

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:14 -07:00
ganglv
c3e1e2dce3 [sonic-cfggen]: Update UT to add port lanes (#10362)
Why I did it
Need to run yang validation for sonic-cfggen unit test, and many unit test does not provide lanes for port table.

How I did it
Update port config file.

How to verify it
Run sonic-cfggen unit test,
Use below PR to verify
#10228

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:08 -07:00
ganglv
d224315292 [sonic-cfggen]: Fix generated deployment_id (#10154)
Why I did it
Config db schema generated by minigraph can’t pass yang validation, deployment_id can’t be none for yang validation.

How I did it
Update minigraph.py, skip deployment_id with None value

How to verify it
Run UT for sonic-config-enginue.
Run command 'sonic-cfggen -m tests/multi_npu_data/sample-minigraph-noportchannel.xml -p tests/multi_npu_data/sample_port_config-3.ini -n asic3 --print-data'.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:05 -07:00
ganglv
9e7dbffca2 [YANG]: Update port Yang models to support multi-asic platform (#10113)
Why I did it
Multi-asic platform add aisc_port_name and role to PORT table, and port_index range is changed.

How I did it
Update sonic-port.yang, add asic_port_name and role, and remove range limitation.

How to verify it
Run UT for sonic-yang-models.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:11:01 -07:00
ganglv
1f29ae59ec [yang]: Add yang models for BGP_PEER_RANGE table (#10082)
Why I did it
end2end test is blocked by Yang model for BGP_PEER_RANGE.

How I did it
Add new yang models.

How to verify it
Run UT for sonc-yang-models.

Signed-off-by: Gang Lv ganglv@microsoft.com
2022-04-17 23:10:57 -07:00
ganglv
8412606da8 [yang]: AAA login pattern (#9805)
Signed-off-by: Gang Lv ganglv@microsoft.com

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

     ** Make sure all your commits include a signature generated with `git commit -s` **

     If this is a bug fix, make sure your description includes "fixes #xxxx", or
     "closes #xxxx" or "resolves #xxxx"

     Please provide the following information:
-->

#### Why I did it
end2end test is blocked by Yang model for AAA login pattern.

#### How I did it
Add pattern to AAA yang models.

#### How to verify it
Run UT for sonc-yang-models.

#### Which release branch to backport (provide reason below if selected)

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106

#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->
Fix #9713 

#### A picture of a cute animal (not mandatory but encouraged)
2022-04-17 23:10:45 -07:00
Vivek R
f0cbd9de5c
update snmp-subagent submodule ptr (#10570)
004b9a4 [202111] Handle error seen on system where vlan interface map is not present (#252)
899cfdd [ci] add pr trigger for 202111 branch (#253)
2022-04-15 12:22:14 -07:00
Petro Bratash
1af932a98b
[BFN] [202111] Updated platform plugins (#10422)
* Ported platform from master

Signed-off-by: Petro Bratash <petrox.bratash@intel.com>

* [BFN] Updated x86_64-accton_as9516_32d-r0/platform.json

* [BFN] Refactoring and adding some functions of Thermal class (set and
get thresholds and etc.)

* [BFN] Fix exception when fwutil run without sudo

* Revert "[BFN] syncd-rpc build with thrift 0.14.1 (#9884)"

This reverts commit bec35267cb.

* [BFN] Updated SDK to 20220127_sai_1.9.1 (#9870)

Signed-off-by: Andriy Kokhan <andriyx.kokhan@intel.com>

* [BFN] updated SDE packages for BFN platforms (#10512)

Updated SDE packages for bfn platform

- introduced X6 profile
- fixes for drop counters
- fixes for platform part

Co-authored-by: Andriy Kokhan <AndriyX.Kokhan@intel.com>
Co-authored-by: roman_savchuk <romanx.savchuk@intel.com>
2022-04-14 10:09:37 -07:00
Judy Joseph
167b90f277 Update sonic-snmpagent
Modify path of python wheels to be installed. (#240)  64e77c66d08ea02f0d5e35af5f6a21cd840e44a7
2022-04-12 17:14:07 -07:00
Yang Wang
bb743fa156
[202111]Bump Thrift version from 0.13.0 to 0.14.1 and typo fixed (#10528)
* Bump Thrift version from 0.13.0 to 0.14.1 (#9881)

#### Why I did it
To bump the Thrift version to 0.14.1 
- To avoid [CVE-2020-13949](https://nvd.nist.gov/vuln/detail/CVE-2020-13949) 
- to fix some dependencies issues

#### How I did it
- rename `src/thrfit_0_13_0` to `src/thrift_2` to remove version number in the path. (`src/thrift` contains rules to build thrift 0.11.0  )
- Add thrift sources as submodule as there are no prepared debian packages for version >0.13.0 on [debian.org](https://packages.debian.org/search?searchon=sourcenames&keywords=thrift)
- Added patches with fixes for original thrift debian rules:(remove unneeded packages, fix multi job build)
#### How to verify it
```
BLDENV=buster make -f Makefile.work target/debs/buster/libthrift-dev_0.14.1_amd64.deb
```

* Correct thrift 0141 typo fix (#10199)

Correct libsaithrift dependency package name from
LIBTHRIFT_DEV_0_14_1 THRIFT_COMPILER_0_14_1 to
LIBTHRIFT_0_14_1_DEV THRIFT_0_14_1_COMPILER

How I did it
How to verify it
Test Done:

make BLDENV=buster SAITHRIFT_V2=y -f Makefile.work target/debs/buster/saiserverv2_0.9.4_amd64.deb

Co-authored-by: Myron Sosyak <myronx.sosyak@intel.com>
2022-04-12 16:21:24 +08:00
xumia
6f5126ef7e
[Build]: Upgrade pip3 package docker to 5.0.3 (#10524)
Why I did it
In sonic-utilities repo, it is required to install docker>=4.4.4
f70dc27827/setup.py (L187)
See #10523
2022-04-12 10:54:10 +08:00
Judy Joseph
5809e7cad4 Update submodule
89d0e92 (HEAD -> 202111, origin/202111) [scripts/fast-reboot] cleanup (#2132)
e0baa93 [config/config_mgmt.py]: Fix dpb issue with upper case mac in (#2066)
2022-04-10 23:32:29 -07:00
Judy Joseph
b49e04a29b Update submodule
dd0fb84 (HEAD -> 202111, origin/202111) [mirrororch]: Implement HW resources availability validation for SPAN/ERSPAN (#2187)
2022-04-10 23:30:47 -07:00
Judy Joseph
711b4f9c98 Update submodule
6745a11 (HEAD -> 202111, origin/202111) LLDPLocalSystemDataUpdater Exception Log Handled (#249)
2022-04-10 23:27:11 -07:00
Judy Joseph
a52af06251 Update src/sonic-platform-common
2135269 (HEAD -> 202111, origin/202111) [SSD]Enhance ssd_generic with more error handling to avoid python crash #271
393fbee [SSD Generic] Add support for parsing nvme ssd model, health and temperature (#265)
2022-04-10 23:24:57 -07:00
Judy Joseph
58fa1858cd Update sonic-platform-daemons
99aebb601fece23bc54a7597410ff7469a7faeb3 Fix platform daemon chassisd to handle auto restart on fail (#247)
2022-04-10 23:23:30 -07:00
Marty Y. Lok
d940402b07 Update Nokia sonic-platform submodule (#10437)
b67d479 Fixed the sfp refactor issue
827c5a6 Added nokia_cmd command nokia_common grpc support for power down/up SFM module
aeb7f56 Added the nokia cli commands for midplane
c57d083 Fix the get_my_module issue and the thermal_infos exception issue.
0536293 Change the output of "show chassis module status"
63212d7 Enhance the help display for nokia_cmd command
e8d2599 Fix the sonic_install_ndk_service script issue
d52bdcf Add command nokia_cmd show sfm-eeprom support

Signed-off-by: mlok <marty.lok@nokia.com>
2022-04-10 23:18:01 -07:00
xumia
b23eb1aea0 [Ci]: check if there is a sonic dirty version issue (#10445)
Why I did it
[Ci]: check if there is a sonic dirty version issue
If there is a dirty version issue in PR build, the build will be failed.
2022-04-10 23:17:58 -07:00
Stepan Blyshchak
f83d73ba29 [scapy] update scapy to 2.4.5 and patch it (#10457)
Why I did it
Running warm-reboot in a loop for 500 times leads to this error on 318-th iteration:

Apr  2 15:56:27.346747 sonic INFO swss#/supervisord: restore_neighbors Traceback (most recent call last):
Apr  2 15:56:27.346747 sonic INFO swss#/supervisord: restore_neighbors   File "/usr/bin/restore_neighbors.py", line 24, in <module>
Apr  2 15:56:27.346747 sonic INFO swss#/supervisord: restore_neighbors     from scapy.all import conf, in6_getnsma, inet_pton, inet_ntop, in6_getnsmac, get_if_hwaddr, Ether, ARP, IPv6, ICMPv6ND_NS, ICMPv6NDOptSrcLLAddr
Apr  2 15:56:27.346795 sonic INFO swss#/supervisord: restore_neighbors   File "/usr/local/lib/python3.7/dist-packages/scapy/all.py", line 25, in <module>
Apr  2 15:56:27.346956 sonic INFO swss#/supervisord: restore_neighbors     from scapy.route import *
Apr  2 15:56:27.346995 sonic INFO swss#/supervisord: restore_neighbors   File "/usr/local/lib/python3.7/dist-packages/scapy/route.py", line 205, in <module>
Apr  2 15:56:27.347089 sonic INFO swss#/supervisord: restore_neighbors     conf.iface = get_working_if()
Apr  2 15:56:27.347129 sonic INFO swss#/supervisord: restore_neighbors   File "/usr/local/lib/python3.7/dist-packages/scapy/arch/linux.py", line 128, in get_working_if
Apr  2 15:56:27.347213 sonic INFO swss#/supervisord: restore_neighbors     ifflags = struct.unpack("16xH14x", get_if(i, SIOCGIFFLAGS))[0]
Apr  2 15:56:27.347250 sonic INFO swss#/supervisord: restore_neighbors   File "/usr/local/lib/python3.7/dist-packages/scapy/arch/common.py", line 31, in get_if
Apr  2 15:56:27.347345 sonic INFO swss#/supervisord: restore_neighbors     return ioctl(sck, cmd, struct.pack("16s16x", iff.encode("utf8")))
Apr  2 15:56:27.347365 sonic INFO swss#/supervisord: restore_neighbors OSError: [Errno 19] No such device
The issue was reported to scapy devs secdev/scapy#3369, the fix is secdev/scapy#3371, however there is no released scapy version with this fix right now, thus decided to build scapy v2.4.5 from sources and apply the fix in a form of a patch.

Signed-off-by: Stepan Blyschak <stepanb@nvidia.com>
2022-04-10 23:17:51 -07:00