sonic-mgmt
sonic-mgmt copied to clipboard
Full Mesh Traffic Sanity verification
Description of PR
Summary: Fixes # (issue)
A test to check reachability from any source port to any destination port in the device for each traffic class.
Type of change
New test case to verify traffic sanity
- [ ] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [x] Test case(new/improvement)
Back port request
- [ ] 201911
- [ ] 202012
- [ ] 202205
- [x] 202305
- [x] 202311
Approach
What is the motivation for this PR?
How did you do it?
ptf64 topology is used to have 64 ports of the DUT connected to 64 PTF ports.
How did you verify/test it?
Ran the test on a T1 ptf-64 topology
Any platform specific information?
This is a Cisco specific test case
Supported testbed topology if it's a new test case?
Documentation
@kevinwangsk FYI
@sreejithsreekumaran pls upload the test results based on your branch full_mesh_traffic_sanity
@sreejithsreekumaran pls upload the test results based on your branch full_mesh_traffic_sanity
Below is the snippet from the log file. I am attaching the run logs as well as the ptf logs
[WARNING]: Invalid characters were found in group names but not replaced, use -vvvv to see details collected 3 items
qos/test_qos_sai.py::TestQosSai::testQosSaiFullMeshTrafficSanity[single_asic-None] PASSED [ 33%] qos/test_qos_sai.py::TestQosSai::testQosSaiFullMeshTrafficSanity[single_dut_multi_asic-None] SKIPPED (Did not find any frontend node that is multi-asic - s...) [ 66%] qos/test_qos_sai.py::TestQosSai::testQosSaiFullMeshTrafficSanity[multi_dut-None] SKIPPED (Don't have 2 frontend nodes - so can't run multi_dut tests) [100%]
========================================================================== warnings summary ===========================================================================
../../usr/local/lib/python3.8/dist-packages/_yaml/init.py:18
/usr/local/lib/python3.8/dist-packages/_yaml/init.py:18: DeprecationWarning: The _yaml extension module is now located at yaml._yaml and its location is subject to change. To use the LibYAML-based parser and emitter, import from yaml
: from yaml import CLoader as Loader, CDumper as Dumper
.
warnings.warn(
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ---------------------------------------------------- generated xml file: /run_logs/sree/tr_2024-03-21-11-21-09.xml ---------------------------------------------------- ======================================================================= short test summary info ======================================================================= SKIPPED [1] qos/qos_sai_base.py:613: Did not find any frontend node that is multi-asic - so can't run single_dut_multi_asic tests SKIPPED [1] qos/qos_sai_base.py:623: Don't have 2 frontend nodes - so can't run multi_dut tests ======================================================== 1 passed, 2 skipped, 1 warning in 4578.74s (1:16:18) ========================================================= INFO:root:Can not get Allure report URL. Please check logs
@kevinskwang please suggest the next step. Further, can you please resolve the conflicts?
The pre-commit check detected issues in the files touched by this pull request. The pre-commit check is a mandatory check, please fix detected issues.
Detailed pre-commit check results:
trim trailing whitespace.................................................Passed
fix end of files.........................................................Passed
check yaml...............................................................Passed
check for added large files..............................................Passed
check python ast.........................................................Passed
flake8...................................................................Failed
- hook id: flake8
- exit code: 1
tests/saitests/py3/sai_qos_tests.py:1647:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1658:27: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1662:23: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1686:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1697:27: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1701:23: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1721:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1732:27: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1736:23: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1755:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1762:35: E275 missing whitespace after keyword
...
[truncated extra lines, please run pre-commit locally to view full check results]
To run the pre-commit checks locally, you can follow below steps:
- Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt docker container.
- Ensure that the
pre-commit
package is installed:
sudo pip install pre-commit
- Go to repository root folder
- Install the pre-commit hooks:
pre-commit install
- Use pre-commit to check staged file:
pre-commit
- Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>
The pre-commit check detected issues in the files touched by this pull request. The pre-commit check is a mandatory check, please fix detected issues.
Detailed pre-commit check results:
trim trailing whitespace.................................................Passed
fix end of files.........................................................Passed
check yaml...............................................................Passed
check for added large files..............................................Passed
check python ast.........................................................Passed
flake8...................................................................Failed
- hook id: flake8
- exit code: 1
tests/saitests/py3/sai_qos_tests.py:1647:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1658:27: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1662:23: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1686:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1697:27: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1701:23: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1721:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1732:27: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1736:23: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1755:19: E275 missing whitespace after keyword
tests/saitests/py3/sai_qos_tests.py:1762:35: E275 missing whitespace after keyword
...
[truncated extra lines, please run pre-commit locally to view full check results]
To run the pre-commit checks locally, you can follow below steps:
- Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt docker container.
- Ensure that the
pre-commit
package is installed:
sudo pip install pre-commit
- Go to repository root folder
- Install the pre-commit hooks:
pre-commit install
- Use pre-commit to check staged file:
pre-commit
- Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>
The pre-commit check detected issues in the files touched by this pull request. The pre-commit check is a mandatory check, please fix detected issues.
Detailed pre-commit check results: trim trailing whitespace.................................................Passedfix end of files.........................................................Passedcheck yaml...............................................................Passedcheck for added large files..............................................Passedcheck python ast.........................................................Passedflake8...................................................................Failed- hook id: flake8- exit code: 1tests/saitests/py3/sai_qos_tests.py:1647:19: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1658:27: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1662:23: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1686:19: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1697:27: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1701:23: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1721:19: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1732:27: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1736:23: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1755:19: E275 missing whitespace after keywordtests/saitests/py3/sai_qos_tests.py:1762:35: E275 missing whitespace after keyword...[truncated extra lines, please run pre-commit locally to view full check results]
To run the pre-commit checks locally, you can follow below steps:
- Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt docker container.
- Ensure that the
pre-commit
package is installed:sudo pip install pre-commit
- Go to repository root folder
- Install the pre-commit hooks:
pre-commit install
- Use pre-commit to check staged file:
pre-commit
- Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>
@kevinskwang these pre-commit warnings are from lines which are part of PR #9896. Looks like the rules have changed from then to now.
could you resolve the conflicts?
could you resolve the conflicts?
@kevinskwang I have resolved the conflict. Please re-approve and do the needful.