Done
Pinned fields
Click on the next to a field label to start pinning.
Details
Assignee
Marcin StachniukMarcin StachniukReporter
Peter TrifanovPeter TrifanovSprint
NoneFix versions
Priority
Normal
Details
Details
Assignee
Marcin Stachniuk
Marcin StachniukReporter
Peter Trifanov
Peter TrifanovSprint
None
Fix versions
Priority

Sentry
Sentry
Sentry
Created February 27, 2025 at 9:59 AM
Updated March 26, 2025 at 8:59 AM
Resolved March 26, 2025 at 8:59 AM
Currently, sonar-php has a dedicated included build
build-logic
. These things are generally copy-pasted from other repos. To centralize this solution, we have a shared solution with a repository . Similar to how it’s already done in sonar-go and sonar-iac, sonar-php should be using this repo as well.Steps to be done:
Add a submodule at
gradle/build-logic-common
Update CI scripts and Readme to include the command for cloning this submodule before any Gradle invocation
Some parts have a drop-in replacement. For them it’s necessary to change groupId from
org.sonarsource.php
toorg.sonarsource.cloud-native
with maybe minor changes in APIartifactory-configuration
java-conventions, code-style-convention
integration-test
rule-api
Methods defined in BuildUtils
Additionally, plugins
"org.sonarsource.cloud-native.common-settings"
andorg.sonarsource.cloud-native.sonar-plugin
need to be applied to settings.gradle.kts and sonar-php-plugin respectively.Settings plugin is a prerequisite for
Clean up old code by removing unused code from build-logic
If there is nothing left, remove it in favor of
gradle/build-logic-common
Replace invocation of
store_project_version_script
in the Cirrus build task withstoreProjectVersion
Gradle task