Repository navigation
SONARJAVA-6899 Onboard SonarJava onto the PVF - #6288
Conversation
bd3d709 to
adf3cc4
Compare
|
Gitar, Valid but conditional on SonarSource/core-languages-tooling-public#70, still open. SonarJS has same permission, keeping parity. |
This comment has been minimized.
This comment has been minimized.
4852ee8 to
f1281ff
Compare
f1281ff to
53e92d0
Compare
Record the deployed sonar-java version as the candidate-version artifact so a later /pvf comment can resolve which build to benchmark.
A `/pvf` comment on a PR dispatches performance-validation-java.yml in peachee-java-kotlin, which runs the benchmark and comments the dashboard link back here. The dashboard is hosted there because this repository is public and the report has to stay private.
…ave to do it later Co-authored-by: Alex Meseldzija <alexander.meseldzija@sonarsource.com>
53e92d0 to
9ce947b
Compare
Code Review ✅ Approved 1 closed / 1 findings🟡 Medium risk · The /pvf comment workflow dispatches a cross-repository performance run, so matching comments could trigger unintended benchmark runs. Onboards SonarJava onto the Performance Validation Framework by adding workflow automation to publish the built plugin version and dispatch performance benchmarks via ✅ 1 closed✅ Cross-PR: pull-requests: read blocks pvf-trigger feedback added by tooling PR #70
Review coverage🧪 Functional validation No results 📋 Rules No rules evaluated 📖 Knowledge used 1 confirmed expected behavior Cross-repo coverage 1 repository selected 🤖 Auto-approval Not enabled · Set up OptionsAuto-apply is off → Gitar will not commit updates to this branch. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Gitar |
|





Part of SONARJAVA-6899. Companion PR: SonarSource/peachee-java-kotlin#327
Onboards SonarJava onto the Performance Validation Framework, the same way SonarJS#7913 did for SonarJS.
Because this repository is public and the PVF report must stay private, the benchmark and the dashboard are hosted in
peachee-java-kotlin(as SonarJS hosts its inpeachee-js). This PR only adds the two ends of the handshake:build.ymlrecords the deployed plugin version as thecandidate-versionartifact.pvf-comment.ymlturns a/pvfcomment on a PR into aworkflow_dispatchofperformance-validation-java.ymlinpeachee-java-kotlin, which benchmarks that version and comments the dashboard link back here.Usage once merged
Comment
/pvfon a PR to benchmark every rule, or/pvf S1234, S5678to restrict the run to specific rules.Prerequisites, all landed
pvf-dispatchfor this repository, withactions:writeonpeachee-java-kotlin— re-terraform-aws-vault#9750build_typeswitch, both listed on the companion PRTesting
The
build.ymlhalf is proven by this PR's own Build run: it publishedcandidate-version=8.45.0.59032.The host side is proven too.
8.45.0.59032was benchmarked against a baseline pinned two releases back, over the full 140-project matrix, in peachee-java-kotlin run 37020618474: every project built and prepared, the issue diff reported real rule differences, and the dashboard published to GitHub Pages. That exercises the project matrix, the build delegation, the server context, the report publication and the issue diffing. See peachee-java-kotlin#329 for how that run was triggered.What remains untestable before merge is only the first hop: GitHub registers an
issue_commentworkflow and aworkflow_dispatchtarget only once the file sits on the default branch, so/pvfcannot fire from a branch on either side. That hop is the sharedpvf-triggeraction already in production for SonarJS, so it is not new code.Merge order
The companion PR has to merge first, because
pvf-comment.ymldispatchesperformance-validation-java.ymlagainstpeachee-java-kotlin'smaster. After both are in, comment/pvfhere to confirm the last hop end to end.