Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added support for front panel port prefix regex #1

Closed
wants to merge 1,034 commits into from

Conversation

itamar-talmon
Copy link
Owner

Why I did it

How I did it

How to verify it

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

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111

Description for the changelog

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

@itamar-talmon itamar-talmon force-pushed the front_panel_port_name_regex branch from a1d3f38 to 55c242f Compare April 3, 2022 06:09
@itamar-talmon itamar-talmon force-pushed the front_panel_port_name_regex branch 3 times, most recently from cd2f2d2 to 36b3d0e Compare June 1, 2022 11:26
@itamar-talmon itamar-talmon force-pushed the front_panel_port_name_regex branch 2 times, most recently from a3d60e7 to b001af0 Compare June 21, 2022 08:12
itamar-talmon pushed a commit that referenced this pull request Jun 21, 2022
…net#10291)

#### Why I did it

Fix issue: Non compliant leaf list in config_db schema: sonic-net#9801

#### How I did it

The basic flow of DPB is like:
1.	Transfer config db json value to YANG json value, name it “yangIn”
2.	Validate “yangIn” by libyang
3.	Generate a YANG json value to represent the target configuration, name it “yangTarget”
4.	Do diff between “yangIn” and “yangTarget”
5.	Apply the diff to CONFIG DB json and save it back to DB
 
The fix:
•	For step #1, If value of a leaf-list field string type, transfer it to a list by splitting it with “,” the purpose here is to make step#2 happy. We also need to save <table_name>.<key>.<field_name> to a set named “leaf_list_with_string_value_set”.
•	For step#5, loop “leaf_list_with_string_value_set” and change those fields back to a string.


#### How to verify it

1. Manual test
2. Changed sample config DB and unit test passed
theasianpianist and others added 23 commits November 7, 2022 12:10
Typo in prior PR sonic-net#11919 hardcodes Vlan name. Change command to use the $vlan variable instead

Signed-off-by: Lawrence Lee <[email protected]>
…12615)

Why I did it
Fixes sonic-net#12614

How I did it
In the container_checker the database_chassis is added to expected container if device is supervisor
To detect the device is superviso, add supervisor=1 to the platform_env.conf of 7808 sup platform

How to verify it
run container_checker monit check
Signed-off-by: Arvindsrinivasan Lakshmi Narasimhan <[email protected]>
686b9b1 Update Makefile to provision the ability of building with non-upstream patches (sonic-net#296)
3b95205 [patch]: Introduce sysctl param `arp_evict_no_carrier` (sonic-net#293)

Signed-off-by: Vivek Reddy <[email protected]>
…le (sonic-net#12602)

- Why I did it
Update SN2201 dynamic minimum fan speed table according to data provided by the thermal team.

- How I did it
Update the thermal table in device_data.py

- How to verify it
Run platform related regression

Signed-off-by: Kebo Liu <[email protected]>
…onic-net#12599)

- Why I did it
Fix logrotate firstaction script to reflect correct size. The size was modified to change dynamically based on disk size. However this variable was not updated
sonic-net#9504

- How I did it
Updated the variable based on disk size

- How to verify it
Verify in the generated rsyslog file if the variable is correctly generated from jinja template
sonic-host-services submodule update with following changes

6eac2d3 Merge pull request sonic-net#19 from judyjoseph/macsec_feature_enable
31c6108 Sync has_per_asic_scope attribute to config_db in all namespaces for multi-asic
185547f Add UT to improve coverage, for namespace config update
7c3aca0 macsec_supported info is part of DEVICE_RUNTIME_METADATA itself.
sonic-net#11998)

* Use the macsec_enabled flag in platform to enable macesc feature state
* Add macsec supported metadata in DEVICE_RUNTIME_METADATA
[sonic-linkmgrd][master] submodule update

b3501d2 Jing Zhang Wed Nov 2 22:22:45 2022 -0700 [active-standby][active-active] update link prober stats updating frequency to 30s (sonic-net#152)
5d546ec Jing Zhang Tue Nov 1 16:12:17 2022 -0700 [202205] incrementing icmp buffer size (sonic-net#150)
76b128a Jing Zhang Tue Nov 1 12:06:21 2022 -0700 [Active-Active] periodically re-sync soc side admin forwarding state (sonic-net#151)

sign-off: Jing Zhang [email protected]
…-net#12627)

add platform.json separately for LC6 that has different name, bc of supporting macsec
Signed-off-by: Wenyi Zhang <[email protected]>
Why I did it
Unify the Debian mirror sources
Make easy to upgrade to the next Debian release, not source url code change required.
Support to customize the Debian mirror sources during the build
Relative issue: sonic-net#12523
…', or missing. (sonic-net#12588)

bgpd.main.conf.j2: bugfix-9739
* Update bgpd.main.conf.j2 to gracefully handle the bgp configuration cases for when 'bgp_asn' is set to 'None', 'Null', or missing.

How I did it
Include a conditional statement to avoid configuring bgp in FRR when 'bgp_asn' is missing or set to 'None' or 'Null'

How to verify it
Configure 'bgp_asn' as 'None', 'Null' or have it missing from configurations and verify that /etc/frr/bgpd.conf does not have invalid bgp configurations like 'router bgp None'

Description for the changelog
Update bgpd.main.conf.j2 to gracefully handle the bgp configuration cases for when 'bgp_asn' is set to 'None', 'Null', or missing for bugfix 9739.

Signed-off-by: [email protected]
* Build docker-gbsyncd-broncos image
* Correct typo in LIBSAI_BRONCOS_URL_PREFIX
* Update docker-gbsyncd-broncos/Dockerfile.j2
* Enable debug shell support on docker-gbsyncd-broncos
* Include bcmsh in docker-gbsyncd-broncos

Why I did it
In docker-gbsyncd-broncos image, enable debug shell support for BRCM broncos PHY.

How I did it
How to verify it
Note: need enable attr SAI_SWITCH_ATTR_SWITCH_SHELL_ENABLE support in BCM PAI library

# bcmsh 
Press Enter to show prompt.
Press Ctrl+C to exit.
NOTICE: Only one bcmsh or bcmcmd can connect to the shell at same time.


BRCM:> help
help
List of available commands
- h or help => Print command menu
- l => Print list of active ports on the PHY
- ps <port_id> <options> =>  Print port status
  <options> =>  1 -> Link status
            =>  2 -> Link training failure status
            =>  3 -> Link training RX status
            =>  4 -> PRBS lock status
            =>  5 -> PRBS lock loss status
- rd <port_id> <addr> <no of registers to read> => Read register contents
- wr <port_id> <addr> <data> => Write register data
- rrd <lanemap> <if_side> <addr> <no of registers to read> => Raw read register contents using lanemap and if_side (line = 0, system = 1)
- rwr <lanemap> <if_side> <addr> <data> => Raw write register data using lanemap and if_side (line = 0, system = 1)
- fw or firmware => Print firmware version of the PHY
- pd or port_dump <port_id> <flags> => Dump port status
- eyescan <port_id> => Display eye scan 
- fec_status <port_id> => Get fec status of the port
- polarity <lanemap> <if_side> <TX polarity> <RX Polarity> => Set TX and RX polarity
    <lanemap> => 0xF, 0xFF, or 0xFFFF based on number of lanes
    <if_side > => Line = 0, System = 1
    <TX/RX Polarity> =>_TX/RX Polarity bitmap of all lanes
        Each bit represents a lane number.
        E.g. Lane 0's polarity value (0 or 1) is populated in Bit 0.
- polarity <lanemap> <if_side> => Print TX and RX polarity
- lb <port_id> <lb_value> => Enable loopback on the port
  lb_value = 0 -> Disable, 1 -> PHY, 2 -> MAC
- lb <port_id> => Print loopback configuration of the port
- prbs <port_id> <options> <val> => Set/Get PRBS configuration
  <options> => 1 -> Get PRBS state and polynomial
               2 -> Set PRBS Polynomial, <val> - PRBS Polynomial
                    Please refer to phy/chip documentation for valid values
               3 -> Enable PRBS
                    <val> => 0 Disable PRBS
                             1 Enable both PRBS Transmitter and Receiver
                             2 Enable PRBS Receiver
                             3 Enable PRBS Transmitter
  exit or q => Exit the diagnostic shell
Why I did it
DX010 platform has limited routing table size.

How I did it
Enabling LPM.

Signed-off-by: Ying Xie <[email protected]>
Why I did it
nameserver and domain entries from build system fsroot gets into sonic image.

How I did it
Clear /etc/resolv.conf before building image

How to verify it
Built image with it and verified with install that /etc/resolv.conf is empty
Why I did it
syseepromd in pmon crashes because of missing import in python script and doesn't get in running state

How I did it
Fix missing import issue to avoid python script failing

How to verify it
Boot system and wait till syseepromd gets into running state

Which release branch to backport (provide reason below if selected)
 201811
 201911
 202006
 202012
 202106
 202111
 202205
…c-net#12648)

Why I did it
DHCP relay feature needs to be enabled for BmcMgmtToRRouter by default

How I did it
Update device type list
…et#12651)

Migrate t0-sonic test jobs to TestbedV2.

Why I did it
Migrate t0-sonic test jobs to TestbedV2.

How I did it
Add two parameters to create testplan.
Modify azure-pipelines.yml to run t0-sonic on tbv2.

Signed-off-by: Yutong Zhang <[email protected]>
Advance sonic-swss submodule to pick up new commits:

dbdf31c [counters] Improve performance by polling only configured ports buffer queue/pg counters sonic-net/sonic-swss#2473
ab4f804 [portsorch] remove port OID from saiOidToAlias map on port deletion sonic-net/sonic-swss#2483
ab29920 [QoS] Support dynamic headroom calculation for Barefoot platforms sonic-net/sonic-swss#2412
15beee4 Add support for voq counters in portsorch. sonic-net/sonic-swss#2467
c8d4905 [vlanmgr] Disable arp_evict_nocarrier for vlan host intf sonic-net/sonic-swss#2469
31c9321 [chassis][voq]Collect counters for fabric links sonic-net/sonic-swss#1944

Signed-off-by: Kebo Liu <[email protected]>
sonic-net#12639)

* Advance submodule sonic-utilities

d5a6da31 Do not configure physical attributes on port channels in portconfig (sonic-net#2456)
48ee7722 Change db_migrator major version on master branch from version 3 to 4 (sonic-net#2470)
f3746163 [GCU] Fix JsonPointerFilter bug (sonic-net#2477)
58dbb3e6 YANG Validation for ConfigDB Updates: TACPLUS, TACPLUS_SERVER, AAA, VLAN_SUB_INTERFACE tables + decorated validated_mod_entry (sonic-net#2452)
062f18a0 fix show interface neighbor expected empty issue (sonic-net#2465)
569edf3b Fix display disorder problem of show mirror_session (sonic-net#2447)
daaf0ffc Disable "tag as local" when reboot (sonic-net#2451)
6621120b Fix sudo sfputil show error-status on a multiasic platform issue (sonic-net#2373)
e8b1dcdf Add IP remove warnings for VRF commands (sonic-net#2351)
40cc8e11 [scripts/generate_dump] add information to tech-support file (sonic-net#2357)
8473517e Revert "[config reload]: On dual ToR systems, cache ARP and FDB table (sonic-net#2460)

Signed-off-by: Stephen Sun <[email protected]>

* Advance sonic-platform-common

aa86083 Fix issue: rounding float value for txpower and rxpower (sonic-net#320)
2052a63 Fix issue: copper cable should not display DOM information (sonic-net#318)
cf4c6af CmisApi::get_application_advertisement catch AttributeError as well (sonic-net#316)

Signed-off-by: Stephen Sun <[email protected]>

Signed-off-by: Stephen Sun <[email protected]>
…-net#12668)

Migrate multi-asic test jobs to TestbedV2.

Why I did it
Migrate multi-asic test jobs to TestbedV2.

How I did it
Add one parameter num_asic to create testplan.
Modify azure-pipelines.yml to run multi-asic on tbv2.

Signed-off-by: Yutong Zhang <[email protected]>
Why I did it
Stopping of pmon after swss and syncd causes some ERROR logs in syslog. Also, this affects teamd downtime.

How I did it
Adjust warmboot shutdown order in make file

How to verify it
Build SONiC image, deploy to the target device and check /etc/sonic/warm-reboot_order content.

lldp mux nat radv sflow bgp pmon swss teamd syncd
swss update with following commits:
81f4ea9 orchagent/portsorch: Missing scheduler group after SWSS restart (sonic-net#2174)
e557855 [SWSS] Innovium platform specific changes in PFC Detect lua script (sonic-net#2493)
6e288dc New P4Orch development. (sonic-net#2425)
ab0e474 swss: Fixing race condition for rif counters (sonic-net#2488)
724f914 [tests] [asan] extend graceful stop flag to also stop syncd (sonic-net#2491)
84642f3 [Dynamic buffer calculation][Mellanox] Enhance the logic to identify buffer pools and profiles (sonic-net#2498)
e04bb43 Fix vs test issue: failed to remove vlan due to referenced by vlan interface (sonic-net#2504)
52c561f Added LAG member check on addLagMember() (sonic-net#2464)
richardyu-ms and others added 23 commits January 6, 2023 11:44
…t#13227) (sonic-net#13232)

Why I did it
why
In order to apply different config across different platform, and use the code with a unified format, reuse syncd init script to init saiserver.

How I did it
how
Reuse syncd init script

How to verify it
Test
Test in DUT s6000 and dx010 with sonic 202205
…-net#13166)

Why I did it
Enable Test sai api on bfn container with a lightweight container(saiserver).

How I did it
enable saiserver container on barefoot platform.

add docker-saiserver-bfn.mk for building saiserver container
in platform/barefoot/docker-saiserver-bfn, add necessary files that needs in saiserver container
How to verify it
Tested on Intel platform ec9516

Signed-off-by: richardyu-ms <[email protected]>

Signed-off-by: richardyu-ms <[email protected]>
Why I did it
Fix issue caused by dualtor support PR [dhcpmon] Open different socket for dual tor to enable interface filtering sonic-net#11201
Improve code
How I did it
On single ToR, packets received count was duplicated due to socket filter set to "inbound"
Tx count not increasing due to filter set to "inbound". Added an outbound socket to count tx packets
Added vlan member interface mapping for Ethernet interface to vlan interface lookup in reference to PR Fix multiple vlan issue sonic-dhcp-relay#27
Exit when socket fails to initialize to allow dhcp_relay docker to restart
How to verify it
Tested on vstestbed single tor and dual tor, sent packets and verify printed out dhcpmon rx and tx counters is correct

Correct number of tx increases
Tx does not increase when ToR is on standby
Undo submodule updates that were incorrectly done in sonic-net#13056.

Partial revert of d57de09

The following submodule changes are being reverted to the version that were present before the above PR got merged:

src/sonic-linux-kernel to 34f26b3
src/sonic-frr/frr to 79188bf710e92acf42fb5b9b0a2e9593a5ee9b05

Signed-off-by: Saikrishna Arcot [email protected]
…excplicitly (sonic-net#13283)

What I did:
Fix : sonic-net#13117

How I did:
During build time mask only those feature/services that are disabled explicitly. Some of the features ((eg: teamd/bgp/dhcp-relay/mux/etc..)) state is determine run-time so for those feature by default service will be up and running and then later hostcfgd will mask them if needed.

So Default behavior will be

init_cfg.json.j2 during build time make state as disabled then mask the service
init_cfg.json.j2 during build time make state as another jinja2 template render string than do no mask the service
init_cfg.json.j2 during build time make state as enabled then do not mask the service

How I verify:
Manual Verification.

Signed-off-by: Abhishek Dosi <[email protected]>
During the build process, a dsc file is retrieved from the URL:
http://deb.debian.org/debian/pool/main/i/isc-dhcp/isc-dhcp_4.4.1-2.3.dsc

Depending on the DNS resolution, the server reached may respond with a
HTTP 404 error code, what stops the build process.
In all cases, the URL http://deb.debian.org/debian/pool/main/i/isc-dhcp/
no more lists this DSC file but one with a different format.

The suffix "+deb11u1" is now appended to identify the debian version.

- append this suffix to the make file rules of isc-dhcp

Signed-off-by: Guillaume Lambert <[email protected]>
9e1176d Zain Budhwani Fri Jan 6 09:00:11 2023 -0800 Refactor eventpublisher deinit (sonic-net/sonic-swss-common#734)
b9a9dbb Liu Shilong Thu Jan 5 10:12:49 2023 +0800 Simplify azure pipeline build template (sonic-net/sonic-swss-common#729)
01fc252 siqbal1986 Wed Jan 4 11:03:53 2023 -0800 Added customer monitoring tables in app db and state db (sonic-net/sonic-swss-common#725)
28dc42a Liu Shilong Wed Dec 28 11:19:32 2022 +0800 Fix sonic-slave docker image environment issue. (sonic-net/sonic-swss-common#727)
1d7607a Saikrishna Arcot Fri Dec 23 11:11:33 2022 -0800 Switch to using stock gcovr 5.2 (sonic-net/sonic-swss-common#726)
9df998b Don't read AUX_MON_TYPE if memory model is flat (sonic-net#339)
…h board (sonic-net#13126)

The console of the centec-arm64 board is ttyAMA0.The current regular expression cannot be correctly parsed.

Signed-off-by: centecqianj <[email protected]>
if there is no request, you need to use curl to get data from bmc, and each query needs to start a curl process. pmon is a circular query, which will pull up multiple processes in a loop, which consumes a lot. Using request does not need to pull up the process.
The display of azure pipeline is not specific now, such as when the step Run test fails, the display of itself shows successful, but the display of step Kvmdump shows fails, but actually, the step Kvmdump doesn't fail. I improve the display of azure pipeline in this pr, each step has its own success or failure, and is shown in azure pipeline.

Why I did it
The display of azure pipeline is not specific now, such as when the step Run test fails, the display of itself shows successful, but the display of step Kvmdump shows fails, but actually, the step Kvmdump doesn't fail. I improve the display of azure pipeline in this pr, each step has its own success or failure, and is shown in azure pipeline.

How I did it
1. Each step has its own signature of success or failure.
2. Using the chain of responsibility pattern to manage all status.
3. Modify the expected-state in each step.
…et#13290)

Why I did it
docker-sonic-slave pipeline has a different tag with PR build.
It leads to ENABLE_DOCKER_BASE_PUll=y not work.

How I did it
set reproducible build option in bash.

How to verify it
)

Fix code issue when SonicV2Connector.get() return None.

#### Why I did it
When database key does not exist, SonicV2Connector.get() will return None.
Code will break if not check return value.

#### How I did it
Check SonicV2Connector.get() return value before use it.

#### How to verify it
Pass all E2E test case.
sonic-net#12997)

Why I did it
We plan to pilot k8s feature, need to fix several bugs including enable telemetry feature and add platform label.

How I did it
Add support feature set, only enable telemetry container upgrade for now
Add platform label for scheduler usage
Remove CNI installation code, it would be auto installed when install kubeadm
How to verify it
After sonic device join k8s cluster, show node labels to check if platform label is visible.

Signed-off-by: Yun Li [email protected]
This is primarily to fix the armhf build failure due to deepdiff python
module getting updated.

1eb7a5b Pin deepdiff to version 6.2.2
ae09e3f [caclmgrd][dualtor] add iptables rule for dualtor gRPC to allow packets getting forwarded from loopback IP
00cb8cb [hostcfgd] Optimize the hostcfgs by moving the definition cmds into the loop to optimize the enable/disable service command run.

Signed-off-by: Saikrishna Arcot <[email protected]>

Signed-off-by: Saikrishna Arcot <[email protected]>
Update sonic-swss-common submodule pointer to include the following:

a4987b9 Change the dtor of ProducerStateTable to virtual method (sonic-net#735)
7be565c [hash]: Add GH DB schema. (sonic-net#733)

Signed-off-by: Nazarii Hnydyn <[email protected]>
Why I did it
docker-sonic-mgmt build is failing.

How I did it
stretch docker is disabled recently. Update docker-sonic-mgmt to buster.
Migrate from sonictest to sonicbld. Because Azure requires migrate vm from uswest2 to uswest3.
Fix a build issue when build image.
How to verify it
…ot is warm/fast reboot (sonic-net#13246)

- Why I did it
In case of warm/fast reboot, the hardware reboot cause will NOT be cleared because CPLD will not be touched in this flow. To not confuse the reboot cause determine logic, the leftover hardware reboot cause shall be skipped by the platform API, platform API will return the 'REBOOT_CAUSE_NON_HARDWARE' instead of the "hardware" reboot cause.

- How I did it
Check the proc cmdline to see whether the last reboot is a warm or fast reboot, if yes skip checking the leftover hardware reboot cause.

- How to verify it
a. Manual test:
    - Perform a power loss
    - Perform a warm/fast reboot
    - Check the reboot cause should be "warm-reboot" or "fast-reboot" instead of "power loss"
b. Run reboot cause related regression test.

Signed-off-by: Kebo Liu <[email protected]>
…nic-net#13284)

The main issue is the pip/pip3 command cannot be found when the package is being installed by apt-get.
When using the dpkg install, the searching path is PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
When using the apt-get install, the searching path is PATH=/usr/sbin:/usr/bin:/sbin:/bin
But the pip/pip3 default path is at /usr/local/bin, so dpkg works, but apt-get not work.

How I did it
Export the path /usr/local/bin for pip/pip3.
Make the deb packages can be installed by apt-get.
Fix a typo in yang for Dash
#### Why I did it
Added SONiC YANG model for RADIUS. 
Fixes sonic-net#12477 

#### How I did it
Added the RADIUS and RADIUS_SERVER tables for global and per RADIUS server configuration. RADIUS statistics reside in COUNTERS_DB and are not part of the configuration. These are not a part of this PR.

#### How to verify it
Compiled sonic_yang_mgmt-1.0-py3-none-any.whl.

#### Description for the changelog
SONiC YANG model for RADIUS.
@itamar-talmon itamar-talmon force-pushed the front_panel_port_name_regex branch 3 times, most recently from 65b39de to daaf438 Compare January 12, 2023 08:22
@itamar-talmon itamar-talmon force-pushed the front_panel_port_name_regex branch from daaf438 to bd60757 Compare January 12, 2023 08:29
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.