diff --git a/devel/sonarqube-community/Makefile b/devel/sonarqube-community/Makefile index b766a1217d87..0d36233bb257 100644 --- a/devel/sonarqube-community/Makefile +++ b/devel/sonarqube-community/Makefile @@ -1,165 +1,165 @@ PORTNAME= sonarqube DISTVERSION= 10.5.1.90531 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= devel security www java MASTER_SITES= https://binaries.sonarsource.com/Distribution/sonarqube/:m_core \ https://binaries.sonarsource.com/Distribution/sonar-csharp-plugin/:m_csharp \ https://binaries.sonarsource.com/Distribution/sonar-java-plugin/:m_java \ https://binaries.sonarsource.com/Distribution/sonar-javascript-plugin/:m_javascript \ https://binaries.sonarsource.com/Distribution/sonar-php-plugin/:m_php \ https://binaries.sonarsource.com/Distribution/sonar-python-plugin/:m_python \ https://binaries.sonarsource.com/Distribution/sonar-vbnet-plugin/:m_vbnet PKGNAMESUFFIX= -community DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:m_core \ sonar-csharp-plugin-${SONARCSHARP_VER}.jar:m_csharp \ sonar-java-plugin-${SONARJAVA_VER}.jar:m_java \ sonar-javascript-plugin-${SONARJAVASCRIPT_VER}.jar:m_javascript \ sonar-php-plugin-${SONARPHP_VER}.jar:m_php \ sonar-python-plugin-${SONARPYTHON_VER}.jar:m_python \ sonar-vbnet-plugin-${SONARVBNET_VER}.jar:m_vbnet EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= netchild@FreeBSD.org COMMENT= Web-based continuous code inspection tool WWW= https://www.sonarqube.org/ LICENSE= LGPL3 LICENSE_FILE= ${WRKSRC}/COPYING #BUILD_DEPENDS= jna>0:devel/jna RUN_DEPENDS= bash:shells/bash #\ # jna>0:devel/jna USES= cpe shebangfix zip nodejs:lts,run CPE_VENDOR= sonarsource USE_JAVA= yes SHEBANG_FILES= elasticsearch/bin/elasticsearch-cli \ elasticsearch/bin/elasticsearch-env NO_ARCH= yes NO_BUILD= yes JAVA_VERSION= 17+ JAVA_VENDOR= openjdk USE_RC_SUBR= ${PORTNAME} APP_NAME= ${PORTNAME} APP_DIR= libexec/${PORTNAME} LOG_DIR= /var/log/${PORTNAME} PID_DIR= /var/run/${PORTNAME} JAR_VERSION= ${DISTVERSION} DBBASE_DIR= /var/db/${PORTNAME} DATA_DIR= ${DBBASE_DIR}/data TEMP_DIR= ${DBBASE_DIR}/temp SONARCSHARP_VER= 9.26.0.92422 SONARJAVA_VER= 7.34.0.35958 SONARJAVASCRIPT_VER= 10.14.0.26080 SONARPHP_VER= 3.35.0.11659 SONARPYTHON_VER= 4.18.0.15334 SONARVBNET_VER= ${SONARCSHARP_VER} USERS= sonarqube GROUPS= sonarqube SUB_LIST= \ APP_NAME=${APP_NAME} \ APP_DIR=${APP_DIR} \ JAVA_HOME=${JAVA_HOME} \ JAVA=${JAVA} \ LOG_DIR=${LOG_DIR} \ PID_DIR=${PID_DIR} \ JAR_VERSION=${JAR_VERSION} \ DATA_DIR=${DATA_DIR} \ TEMP_DIR=${TEMP_DIR} SUB_FILES= \ ${APP_NAME} \ pkg-message PLIST_SUB= APP_NAME=${APP_NAME} \ APP_DIR=${APP_DIR} \ LOG_DIR=${LOG_DIR} \ PID_DIR=${PID_DIR} \ JAR_VERSION=${JAR_VERSION} \ DBBASE_DIR=${DBBASE_DIR} \ DATA_DIR=${DATA_DIR} \ TEMP_DIR=${TEMP_DIR} \ SONARCSHARP_VER=${SONARCSHARP_VER} \ SONARJAVA_VER=${SONARJAVA_VER} \ SONARJAVASCRIPT_VER=${SONARJAVASCRIPT_VER} \ SONARPHP_VER=${SONARPHP_VER} \ SONARPYTHON_VER=${SONARPYTHON_VER} \ SONARSCMGIT_VER=${SONARSCMGIT_VER} \ SONARSCMSVN_VER=${SONARSCMSVN_VER} \ SONARVBNET_VER=${SONARVBNET_VER} post-extract: ${RM} -r ${WRKSRC}/bin ${WRKSRC}/lib/jsw ${WRKSRC}/conf/wrapper.conf # ${RM} ${WRKSRC}/elasticsearch/lib/jna*.jar ${MV} ${WRKSRC}/conf/sonar.properties ${WRKSRC}/conf/sonar.properties.sample .for plugin in sonar-csharp-plugin \ sonar-java-plugin \ sonar-javascript-plugin \ sonar-php-plugin \ sonar-python-plugin \ sonar-vbnet-plugin ${RM} ${WRKSRC}/lib/extensions/${plugin}-*.jar .endfor .for plugin in sonar-csharp-plugin-${SONARCSHARP_VER}.jar \ sonar-java-plugin-${SONARJAVA_VER}.jar \ sonar-javascript-plugin-${SONARJAVASCRIPT_VER}.jar \ sonar-php-plugin-${SONARPHP_VER}.jar \ sonar-python-plugin-${SONARPYTHON_VER}.jar \ sonar-vbnet-plugin-${SONARVBNET_VER}.jar ${CP} ${DISTDIR}/${plugin} ${WRKSRC}/lib/extensions/ .endfor post-patch: ${REINPLACE_CMD} -e 's:%%LOG_DIR%%:${LOG_DIR}:g ; s:%%DATA_DIR%%:${DATA_DIR}:g ; s:%%TEMP_DIR%%:${TEMP_DIR}:g' ${WRKSRC}/conf/sonar.properties.sample do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/${APP_DIR}/elasticsearch/plugins ${MKDIR} ${STAGEDIR}${LOG_DIR} ${STAGEDIR}${PID_DIR} \ ${STAGEDIR}${DATA_DIR} ${STAGEDIR}${TEMP_DIR} .for dir in conf elasticsearch extensions lib web cd ${WRKSRC}; ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${PREFIX}/${APP_DIR} "! -name *\.orig" .endfor # ${LN} -s ${JAVASHAREDIR}/classes/jna.jar \ # ${STAGEDIR}${PREFIX}/${APP_DIR}/elasticsearch/lib/jna.jar gen-plist: ${ECHO} '@sample ${APP_DIR}/conf/sonar.properties.sample' >${PLIST}.new ${ECHO} '@dir(sonarqube,sonarqube,755) %%DBBASE_DIR%%' >>${PLIST}.new ${ECHO} '@dir(sonarqube,sonarqube,755) %%DATA_DIR%%' >>${PLIST}.new ${ECHO} '@dir(sonarqube,sonarqube,755) %%TEMP_DIR%%' >>${PLIST}.new ${ECHO} '@dir %%APP_DIR%%/elasticsearch/plugins' >>${PLIST}.new # ${ECHO} '@dir(sonarqube,sonarqube,755) %%APP_DIR%%/extensions' >>${PLIST}.new .for dir in conf elasticsearch lib web ${FIND} ${STAGEDIR}${PREFIX}/${APP_DIR}/${dir} -type f -o -type l | \ ${SED} -e "s:${STAGEDIR}${PREFIX}/::g ; \ s:${JAR_VERSION}:%%JAR_VERSION%%:g ; \ s:sonar-csharp-plugin-[0-9.]*.jar:sonar-csharp-plugin-%%SONARCSHARP_VER%%.jar:g ; \ s:sonar-java-plugin-[0-9.]*.jar:sonar-java-plugin-%%SONARJAVA_VER%%.jar:g ; \ s:sonar-javascript-plugin-[0-9.]*.jar:sonar-javascript-plugin-%%SONARJAVASCRIPT_VER%%.jar:g ; \ s:sonar-php-plugin-[0-9.]*.jar:sonar-php-plugin-%%SONARPHP_VER%%.jar:g ; \ s:sonar-python-plugin-[0-9.]*.jar:sonar-python-plugin-%%SONARPYTHON_VER%%.jar:g ; \ s:sonar-vbnet-plugin-[0-9.]*.jar:sonar-vbnet-plugin-%%SONARVBNET_VER%%.jar:g ; \ s:\(.*elasticsearch/bin.*\):@(,,755) \1:g" | \ ${GREP} -v conf/sonar.properties.sample | ${SORT} >> ${PLIST}.new .endfor ${ECHO} '@owner sonarqube' >>${PLIST}.new ${ECHO} '@group sonarqube' >>${PLIST}.new .for dir in extensions ${FIND} ${STAGEDIR}${PREFIX}/${APP_DIR}/${dir} -type d | \ ${SED} -e "s:${STAGEDIR}${PREFIX}/:@dir(sonarqube,sonarqube,755) :g" | \ ${SORT} >> ${PLIST}.new ${FIND} ${STAGEDIR}${PREFIX}/${APP_DIR}/${dir} -type f | \ ${SED} -e "s:${STAGEDIR}${PREFIX}/::g ; \ s:${JAR_VERSION}:%%JAR_VERSION%%:g" | \ ${SORT} >> ${PLIST}.new .endfor ${ECHO} '@dir(sonarqube,sonarqube,755) %%LOG_DIR%%' >> ${PLIST}.new ${ECHO} '@dir(sonarqube,sonarqube,755) %%PID_DIR%%' >> ${PLIST}.new .include diff --git a/devel/sonarqube-community/files/sonarqube.in b/devel/sonarqube-community/files/sonarqube.in index 88a57c82a74c..1039a65e2ae7 100644 --- a/devel/sonarqube-community/files/sonarqube.in +++ b/devel/sonarqube-community/files/sonarqube.in @@ -1,71 +1,72 @@ #!/bin/sh # PROVIDE: sonarqube # REQUIRE: NETWORKING SERVERS # KEYWORD: shutdown # # Add the following line to /etc/rc.conf to enable %%APP_NAME%%: # # %%APP_NAME%%_enable="YES" # . /etc/rc.subr name=%%APP_NAME%% rcvar=%%APP_NAME%%_enable # set defaults %%APP_NAME%%_enable=${%%APP_NAME%%_enable:-"NO"} %%APP_NAME%%_supervised=${%%APP_NAME%%_supervised:-"YES"} %%APP_NAME%%_user=${%%APP_NAME%%_user:-"sonarqube"} %%APP_NAME%%_group=${%%APP_NAME%%_group:-"sonarqube"} %%APP_NAME%%_parameters=${%%APP_NAME%%_parameters:-"-Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true"} %%APP_NAME%%_logfile=${%%APP_NAME%%_logfile:-"%%LOG_DIR%%/daemon.log"} %%APP_NAME%%_pidpath=${%%APP_NAME%%_pidpath:-"%%PID_DIR%%"} +%%APP_NAME%%_svcj_options=${%%APP_NAME%%_svcj_options:-"net_basic"} sup_pidfile=${%%APP_NAME%%_pidpath}/%%APP_NAME%%_supervisor.pid main_pidfile=${%%APP_NAME%%_pidpath}/%%APP_NAME%%.pid if [ ! -d %%PID_DIR%% ]; then mkdir -p %%PID_DIR%% chown ${%%APP_NAME%%_user}:${%%APP_NAME%%_group} %%PID_DIR%% fi if [ ! -d %%LOG_DIR%% ]; then mkdir -p %%LOG_DIR%% chown ${%%APP_NAME%%_user}:${%%APP_NAME%%_group} %%LOG_DIR%% fi if test -n "${%%APP_NAME%%_java_version}" ; then JAVA_HOME=$(JAVA_VERSION="${%%APP_NAME%%_java_version}" JAVAVM_DRYRUN=1 %%LOCALBASE%%/bin/java | grep JAVA_HOME | cut -d= -f2) javaname=$(JAVA_VERSION="${%%APP_NAME%%_java_version}" JAVAVM_DRYRUN=1 %%LOCALBASE%%/bin/java | grep JAVAVM_PROG | cut -d= -f2) else JAVA_HOME=$(JAVAVM_DRYRUN=1 %%LOCALBASE%%/bin/java | grep JAVA_HOME | cut -d= -f2) javaname=$(JAVAVM_DRYRUN=1 %%LOCALBASE%%/bin/java | grep JAVAVM_PROG | cut -d= -f2) fi export JAVA_HOME jarname="%%PREFIX%%/%%APP_DIR%%/lib/sonar-application-%%JAR_VERSION%%.jar" command="/usr/sbin/daemon" required_files="%%PREFIX%%/%%APP_DIR%%/conf/sonar.properties" load_rc_config ${name} if checkyesno %%APP_NAME%%_supervised; then # auto-restart on termination pidfile=${sup_pidfile} daemon_supervise_args="-r -P ${sup_pidfile}" procname=daemon else # no restart on termination pidfile=${main_pidfile} damon_supervise_args="" procname=${javaname} fi command_args="${daemon_supervise_args} -o ${%%APP_NAME%%_logfile} -p ${main_pidfile} ${javaname} ${%%APP_NAME%%_parameters} -jar ${jarname}" run_rc_command "$1"