-
Notifications
You must be signed in to change notification settings - Fork 8
ci: Add Fedora 42; use tox-lsr 3.9.0; use lsr-report-errors for qemu tests #56
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
Conversation
…tests Add Fedora 42 to testing farm test matrix, drop Fedora 40 Use tox-lsr 3.9.0 for the `--lsr-report-errors-url` argument. Add the argument `--lsr-report-errors-url DEFAULT` to the qemu test so that the errors will be written to the output log. This uses the output callback https://github.com/linux-system-roles/auto-maintenance/blob/main/callback_plugins/lsr_report_errors.py Use the check_logs.py script https://github.com/linux-system-roles/auto-maintenance/blob/main/check_logs.py with the `--github-action-format` argument to format the errors in a github action friendly manner. Rename the log files `-FAIL.log` or `-SUCCESS.log` depending on status. This is compatible with the way the testing farm log files are named, and makes it easy to tell if a test passed or failed from the log file name. Upload README.html as artifacts of the build_docs job for debugging Signed-off-by: Rich Megginson <rmeggins@redhat.com>
Reviewer's GuideThis PR modernizes the CI pipelines by adding Fedora 42 support, upgrading tox-lsr to 3.9.0, improving QEMU test error reporting with lsr-report-errors and check_logs.py (including renaming test logs by status), and exposing README.html as a build artifact. Sequence Diagram for Enhanced QEMU Test Error ReportingsequenceDiagram
participant GHA as GitHub Actions (Workflow)
participant TOX as tox (with tox-lsr 3.9.0)
participant LSR_CB as lsr_report_errors.py (Callback)
participant LOG as Test Log File
participant CLS as check_logs.py
GHA->>TOX: Run QEMU tests
activate TOX
TOX-->>LSR_CB: Executes tests, on error calls callback (via --lsr-report-errors-url DEFAULT)
activate LSR_CB
LSR_CB->>LOG: Writes detailed errors
deactivate LSR_CB
deactivate TOX
GHA->>CLS: Run check_logs.py --github-action-format
activate CLS
CLS->>LOG: Reads log file
CLS->>GHA: Outputs formatted errors
CLS->>LOG: Renames log file (e.g., *-FAIL.log or *-SUCCESS.log)
deactivate CLS
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @richm - I've reviewed your changes - here's some feedback:
- Pin the check_logs.py script to a specific commit or release instead of always pulling from main to ensure reproducible error formatting.
- Use a fixed version tag for actions/upload-artifact (instead of @master) to avoid unexpected CI breaks when the action changes upstream.
- Centralize the tox-lsr version (e.g. via a workflow variable or reusable workflow) to avoid having to bump it manually across multiple YAML files.
Here's what I looked at during the review
- 🟢 General issues: all looks good
- 🟢 Security: all looks good
- 🟢 Review instructions: all looks good
- 🟢 Testing: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Add Fedora 42 to testing farm test matrix, drop Fedora 40
Use tox-lsr 3.9.0 for the
--lsr-report-errors-urlargument.Add the argument
--lsr-report-errors-url DEFAULTto the qemu test so thatthe errors will be written to the output log. This uses the output callback
https://github.com/linux-system-roles/auto-maintenance/blob/main/callback_plugins/lsr_report_errors.py
Use the check_logs.py script
https://github.com/linux-system-roles/auto-maintenance/blob/main/check_logs.py
with the
--github-action-formatargument to format the errorsin a github action friendly manner.
Rename the log files
-FAIL.logor-SUCCESS.logdepending on status.This is compatible with the way the testing farm log files are named, and
makes it easy to tell if a test passed or failed from the log file name.
Upload README.html as artifacts of the build_docs job for debugging
Signed-off-by: Rich Megginson rmeggins@redhat.com
Summary by Sourcery
Update CI workflows to use tox-lsr 3.9.0, adjust Fedora test coverage, enhance test logging and error reporting, and upload built docs artifact
Enhancements:
CI:
Documentation: