sonic-mgmt icon indicating copy to clipboard operation
sonic-mgmt copied to clipboard

Full Mesh Traffic Sanity verification

Open sreejithsreekumaran opened this issue 11 months ago • 4 comments

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

sreejithsreekumaran avatar Mar 13 '24 10:03 sreejithsreekumaran

@kevinwangsk FYI

alpeshspatel avatar Mar 19 '24 11:03 alpeshspatel

@sreejithsreekumaran pls upload the test results based on your branch full_mesh_traffic_sanity

kevinskwang avatar Mar 20 '24 09:03 kevinskwang

@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

full_mesh_ptf_logs.tar.gz fullmesh_run_log.tar.gz

sreejithsreekumaran avatar Mar 21 '24 12:03 sreejithsreekumaran

@kevinskwang please suggest the next step. Further, can you please resolve the conflicts?

sreejithsreekumaran avatar Apr 05 '24 15:04 sreejithsreekumaran

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:

  1. 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.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

mssonicbld avatar May 13 '24 09:05 mssonicbld

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:

  1. 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.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

mssonicbld avatar May 13 '24 09:05 mssonicbld

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:

  1. 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.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. 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.

sreejithsreekumaran avatar May 13 '24 10:05 sreejithsreekumaran

could you resolve the conflicts?

kevinskwang avatar May 30 '24 05:05 kevinskwang

could you resolve the conflicts?

@kevinskwang I have resolved the conflict. Please re-approve and do the needful.

sreejithsreekumaran avatar May 30 '24 11:05 sreejithsreekumaran