I’d like to suggest a configuration parameter for the file and the associated environment variables. There are currently properties for and sonar.path.temp which are helpful when attempting to redirect persistent data outside the application folder. I’d like to suggest one be added for sonar.path.extensions so that admins can tell sonar to look for extensions in a location other than the default application folder using a runtime variable.

In particular my intent would be to set this value in the environment variables as part of a docker compose file.

Hi @CameronG ,

Can you please give us more details on the reason why you’d like to specify a different path for plugins?
Are you not using a sonar_extensions volume mounted as /opt/sonarqube/extensions?


The real reason is that I’d prefer not to provision 3 data volumes to run the application. That is too heavy a storage admin footprint for one application that only services the Software Engineering team. The only time I would be likely to restore or replace those volumes would be in the event a Sonar upgrade had to be rolled back, which I understand would require me to restore all of those storage volumes as a set anyway (perhaps not the logs volume). If an upgrade fails I would much prefer to restore my Postgres DB instance and a single EBS volume.

Beyond my particular plans; however, there are ENV variables defined for all the other storage locations that allow those to be set at runtime except plugins. Right now for example mine are set as follows:

SONAR_PATH_DATA: /var/sonarqube/data
SONAR_PATH_LOGS: /var/sonarqube/logs
SONAR_PATH_TEMP: /var/sonarqube/temp

Where /var/sonarqube is mounted to a sonardata EBS volume.

So adding an option for SONAR_PATH_PLUGINS seems in keeping with the current application design and would allow that deployment flexibility.