ci: Add Fedora 42; use tox-lsr 3.9.0; use lsr-report-errors for qemu tests#105
Merged
ci: Add Fedora 42; use tox-lsr 3.9.0; use lsr-report-errors for qemu tests#105
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 <[email protected]>
Reviewer's GuideThis PR modernizes the CI by upgrading tox-lsr, enriching QEMU test logs with lsr-report-errors and GitHub-friendly formatting, revises the Fedora test matrix, adds a docs artifact step, and standardizes OS variable alias files. Sequence Diagram: New QEMU Test Error Reporting ProcesssequenceDiagram
autonumber
participant GHA_Workflow as GitHub Actions Workflow
participant QEMU_Test_Runner as QEMU Test Runner
participant Ansible_Callback as lsr_report_errors.py
participant Test_Log as Test Output Log
participant Check_Logs_Script as check_logs.py
GHA_Workflow->>QEMU_Test_Runner: Run QEMU tests (with --lsr-report-errors-url DEFAULT)
QEMU_Test_Runner->>Ansible_Callback: Test executes, Ansible callback activated on error/completion
Ansible_Callback->>Test_Log: Writes error details
GHA_Workflow->>Check_Logs_Script: Run check_logs.py (with --github-action-format)
Check_Logs_Script->>Test_Log: Read error details from log
Check_Logs_Script->>GHA_Workflow: Output formatted errors for GitHub UI
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey @richm - I've reviewed your changes - here's some feedback:
- Instead of fetching check_logs.py from refs/heads/main, pin it to a specific commit or vendor it in the repo to avoid CI breakage when upstream changes.
- The repeated pip install of [email protected] across multiple workflows could be extracted into a reusable step or composite action to reduce duplication and simplify future upgrades.
- With Fedora-42 added and Fedora-40 removed, double-check that all role metadata (e.g. galaxy_info tags) and inventory mappings in vars/ are updated accordingly so tests cover the new platform.
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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 [email protected]
Summary by Sourcery
Update CI workflows to use tox-lsr 3.9.0 and extend Fedora coverage to Fedora 42 while dropping Fedora 40, enhance QEMU integration tests with improved error reporting and log naming, upload generated documentation artifacts, and add variable mapping files for AlmaLinux and Rocky Linux versions 9 and 10.
Enhancements:
CI: