Configurar SonarQube para que inicie como servicio en MacOS
Después de instalar SonarQube y configurar una base de datos dedicada el último paso para ti probablemente sea configurarlo como servicio para que inicie con el sistema operativo. Si aún no has instalado SonarQube te recomendamos leer los siguientes post.
- Instalación SonarQube
- Configurar PostgreSQL en SonarQube
Si deseas configurar configurar SonarQube para que inicie en Linux puedes leer el siguiente tutorial.
- Configurar SonarQube para que inicie como servicio en Linux
Launchd
Lo primero que debes saber acerca de iniciar SonarQube como servicio, es que elasticsearch, un componente hecho en Java que utiliza el SQ no permite inicio como root. Debido a esto, el servicio se debe crear en /Library/LaunchAgents
y no en /System/Library/LaunchAgents
. Dicho esto, puedes crear un archivo para el servicio en esta carpeta y agregarle el siguiente contenido.
sudo vim /Library/LaunchAgents/org.sonarqube.server.plist
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.sonarqube.server</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/sonarqube8/bin/macosx-universal-64/sonar.sh</string>
<string>console</string>
</array>
<key>KeepAlive</key>
<true></true>
</dict>
</plist>
Te en cuenta que debes reemplazar el path en donde tienes el ejecutable del SonarQube (sonar.sh
).
Para cargar la configuración del servicio puedes ejecutar el siguiente comando.
sudo launchctl load /Library/LaunchAgents/org.sonarqube.server.plist
Si deseas que este servicio inicie con el sistema operativo debes agregarlo al startup.
sudo launchctl load -w /Library/LaunchAgents/org.sonarqube.server.plist
Para iniciar el servicio basta ejecutar el siguiente comando.
sudo launchctl start org.sonarqube.server