Skip to content

CHASSIS_STATE_DB on control-card for chassis state#395

Merged
lguohan merged 3 commits intosonic-net:masterfrom
mprabhu-nokia:nokia-thermal-pr
Nov 4, 2020
Merged

CHASSIS_STATE_DB on control-card for chassis state#395
lguohan merged 3 commits intosonic-net:masterfrom
mprabhu-nokia:nokia-thermal-pr

Conversation

@mprabhu-nokia
Copy link
Contributor

@mprabhu-nokia mprabhu-nokia commented Oct 14, 2020

On a modular chassis, add a CHASSIS_STATE_DB where all state
information from line-cards can be persisted.

One example is thermal sensors information from each of the line
cards are stored in CHASSIS_STATE_DB. Control card can access this
information to feed to the thermal-policy, fan algorithm etc.

On a modular chassis, add a GLOBAL_STATE_DB where all state
information from line-cards can be persisted.

One example is thermal sensors information from each of the line
cards are stored in GLOBAL_STATE_DB. Control card can access this
information to feed to the thermal-policy, fan algorithm etc.
@mprabhu-nokia mprabhu-nokia changed the title GLOBAL_STATE_DB on control-card for chassis state CHASSIS_STATE_DB on control-card for chassis state Oct 23, 2020
@lguohan lguohan merged commit e0c229a into sonic-net:master Nov 4, 2020
yxieca pushed a commit to sonic-net/sonic-mgmt that referenced this pull request Mar 19, 2021
#3117)

Approach
What is the motivation for this PR?
Add new attribute modular_chassis which will be set true if DUT is modular chassis and False for other
Add support to run tests on tests/platform_tests/test_cpu_memory_usage.py, tests/platform_tests/test_port_toggle.py on T2 chassis, change test_show_chassis_module to run duts per hwsku.
Add new tests to verify thermal local and global state db on VoQ chassis introduced by PRs sonic-net/sonic-swss-common#395 and sonic-net/sonic-platform-daemons#101

How did you do it?
modifications to current tests and new test file as below:

tests/common/devices/sonic.py
Add new attribute modular_chassis which can be used to skip tests only for modular chassis if DUT is not chassis
possible values for attribute are True if DUT is part of modular chassis and False if not part of modular chassis

tests/platform_tests/cli/test_show_chassis_module.py

change test select one dut per hwsku instead of running on all DUTs
tests/platform_tests/test_cpu_memory_usage.py

change rand_one_dut_hostname to enum_rand_one_per_hwsku_hostname to test per hwsku.
tests/platform_tests/test_port_toggle.py

change rand_one_dut_hostname to enum_rand_one_per_hwsku_hostname to test per hwsku.
tests/platform_tests/test_thermal_state_db.py

Add new test for t2 chassis to verify thermal data in local state db for all thermal sensors
Verify global state db in supervisor has data for all sensors from all modules in chassis
How did you verify/test it?
Validated the modified tests against a chassis .
vmittal-msft pushed a commit to vmittal-msft/sonic-mgmt that referenced this pull request Sep 28, 2021
sonic-net#3117)

Approach
What is the motivation for this PR?
Add new attribute modular_chassis which will be set true if DUT is modular chassis and False for other
Add support to run tests on tests/platform_tests/test_cpu_memory_usage.py, tests/platform_tests/test_port_toggle.py on T2 chassis, change test_show_chassis_module to run duts per hwsku.
Add new tests to verify thermal local and global state db on VoQ chassis introduced by PRs sonic-net/sonic-swss-common#395 and sonic-net/sonic-platform-daemons#101

How did you do it?
modifications to current tests and new test file as below:

tests/common/devices/sonic.py
Add new attribute modular_chassis which can be used to skip tests only for modular chassis if DUT is not chassis
possible values for attribute are True if DUT is part of modular chassis and False if not part of modular chassis

tests/platform_tests/cli/test_show_chassis_module.py

change test select one dut per hwsku instead of running on all DUTs
tests/platform_tests/test_cpu_memory_usage.py

change rand_one_dut_hostname to enum_rand_one_per_hwsku_hostname to test per hwsku.
tests/platform_tests/test_port_toggle.py

change rand_one_dut_hostname to enum_rand_one_per_hwsku_hostname to test per hwsku.
tests/platform_tests/test_thermal_state_db.py

Add new test for t2 chassis to verify thermal data in local state db for all thermal sensors
Verify global state db in supervisor has data for all sensors from all modules in chassis
How did you verify/test it?
Validated the modified tests against a chassis .
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