-
Notifications
You must be signed in to change notification settings - Fork 40
SONARXML-259 Migrate ruling tasks to GitHub actions #359
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
|
|
This PR is stale because it has been open 7 days with no activity. If there is no activity in the next 7 days it will be closed automatically |
a1543af to
5c209c5
Compare
5c209c5 to
b93bb2f
Compare
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.
Pull Request Overview
Migrates separate Linux/Windows build and QA workflows into consolidated matrix-driven jobs and adds ruling test execution in GitHub Actions. Key updates modernize action versions and unify deployment logic.
- Merge build-linux and build-windows into a single matrix build job with conditional deploy
- Introduce unified qa matrix covering plugin and ruling test suites across runners and SQ versions
- Update pinned action versions (checkout v5.0.0, mise-action v3.2.0) and adjust Maven invocation to use env-driven parameters
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Co-authored-by: Copilot <[email protected]>
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.
Overall, the ruling implementation looks good to me.
While this isn't the focus of this PR, the windows build running on master would deploy (see here). I still approved since this was behavior was already present before.
.github/workflows/build.yml
Outdated
| needs: | ||
| - get-build-number | ||
| - build-linux | ||
| - build |
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.
nitpick: Depending on how the two builds are scheduled and how long they take, you could have the situation where the qa jobs are waiting to start, even though the relevant build job already finished.
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.
Yes. Only one should be deployed, ideally Linux-based one, so Windows ruling should use the result of the the Linux build. I don't see a simple solution, but it's a small problem.
I added a comment.
| plugin-qa: | ||
| runs-on: github-ubuntu-latest-s # Custom GitHub-hosted runner for public repos | ||
| name: Plugin QA (${{ matrix.sq_version }}) | ||
| qa: |
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.
This might be misnamed since it does both Plugin QA and Ruling
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.
It's intentional for consistency with https://github.com/SonarSource/sonar-ruby/blob/master/.github/workflows/build.yml We could rename it to "its", but I'll leave it for consistency.
|





SONARXML-259
Also merge Linux and Windows builds into one job with matrix strategy and clean up action versions.