Repository navigation
ci: move the repeated workflow shell into util scripts (#1967) - #1995
Conversation
|
Coverage: 91.52% (unit tier, Python 3.15,
Per-file detail: the |
|
GOOD TO GO at
One finding dismissed: |
|
resolve conflicts |
- util/leg_summary.py: every `KTLO summary` (unit-tests.yml's test, integration and pypcap-parity, python-compatibility.yml's compatibility) and experimental.yml's `Experimental summary` run it in place of the jq loop, on the image's /usr/bin/python3; the tier words the warning. - util/classify_changes.py: `Classify the diff` in both `changes` jobs runs it in place of the inline heredoc; their checkout runs on every event, as the script is in the tree. - util/coverage_report.py: `Report coverage`'s data check (#1387), combine/report/html/json and summary table, with a stage argument. - Pins follow the steps to the scripts; create-release.yml's inline KTLO summary is run against the script and must match it. - workflows.rst: a Workflow Scripts section, by job and step name; shifted unit-tests.yml line citations renumbered. tests/project: 1336 passed, 71 skipped.
|
Rebased onto The |
a38196c to
4c3ce4b
Compare
make pylint,make mypy,make isort)make testpasses, and a test case covers the changeWhat is the purpose of your pull request?
ci— workflows or build toolingDescription of your pull request and other information
Step 2 of #1967 moves the repeated workflow shell into
util/scripts.util/leg_summary.py <ktlo|experimental>replaces the copies of the jq summary in theKTLO summarysteps ofunit-tests.yml(test,integration,pypcap-parity) and ofpython-compatibility.yml, and inexperimental.yml'sExperimental summary. It runs on the image'spython3, not on the leg's interpreter.util/classify_changes.pyreplaces the copy ofClassify the diffthat thechangesjobs ofunit-tests.ymlandexperimental.ymlboth carried.util/coverage_report.pyreplacesReport coverage's data check, combine/report commands and summary table.Behaviour changes:
changesjobs now check out on every event, because the script lives in the tree.Tests:
tests/project/test_workflow_scripts_1967.pyruns each script end to end. The existing pins now exercise the scripts rather than the inline shell. Breaking any one script fails the new tests. All oftests/projectpasses.Left for later steps:
create-release.yml'spypijob keeps an inline KTLO summary. A test holds it identical to the script until ruling C moves it.file.yml:Ncitations inworkflows.rstandreleasing.rstbecome step-name citations in step 6.Part of #1967.