diff --git a/sysutils/logstash8/Makefile b/sysutils/logstash8/Makefile index 03009fa08b1d..64383ccf7458 100644 --- a/sysutils/logstash8/Makefile +++ b/sysutils/logstash8/Makefile @@ -1,93 +1,89 @@ PORTNAME= logstash -PORTVERSION= 8.11.3 +PORTVERSION= 8.19.9 DISTVERSIONSUFFIX= -darwin-x86_64 CATEGORIES= sysutils java MASTER_SITES= https://artifacts.elastic.co/downloads/logstash/ PKGNAMESUFFIX= 8 MAINTAINER= elastic@FreeBSD.org COMMENT= Server-side data ingestion and transformation tool (8.x version) WWW= https://www.elastic.co/products/logstash LICENSE= APACHE20 ONLY_FOR_ARCHS= aarch64 amd64 RUN_DEPENDS= ${LOCALBASE}/bin/bash:shells/bash -USES= cpe java shebangfix +USES= cpe shebangfix java:run + CPE_VENDOR= elastic -JAVA_VERSION= 17+ +JAVA_VERSION= 21+ + USE_RC_SUBR= logstash SHEBANG_FILES= bin/* -CONFLICTS= logstash6 logstash7 +CONFLICTS= logstash6 logstash7 logstash91 logstash92 NO_BUILD= yes PORTSCOUT= limit:^8 SUB_FILES= pkg-message SUB_LIST= JAVA_HOME=${JAVA_HOME} \ LOGSTASH_HOME=${LOGSTASH_HOME} WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION} USERS= logstash GROUPS= logstash LOGSTASH_CONF_FILES= jvm.options log4j2.properties logstash.yml \ pipelines.yml startup.options LOGSTASH_HOME?= ${PREFIX}/${PORTNAME} LOGSTASH_JRUBY_BIN_FILES= ast gem irb jgem jirb jirb_swing jruby \ jruby.sh jrubyc rake rdoc ri LOGSTASH_JRUBY_SUBDIR= vendor/jruby/bin post-extract: ${RM} -rf ${WRKSRC}/jdk.app post-patch: ${REINPLACE_CMD} 's|%%ETCDIR%%|${ETCDIR}|g' ${WRKSRC}/config/logstash.yml ${FIND} ${WRKSRC} -name '*.orig' -delete do-install: ${FIND} ${WRKSRC} -name '*.bat' -delete ${MKDIR} ${STAGEDIR}${ETCDIR} ${INSTALL_DATA} ${FILESDIR}/logstash.conf.sample ${STAGEDIR}${ETCDIR} .for x in ${LOGSTASH_CONF_FILES} ${INSTALL_DATA} ${WRKSRC}/config/${x} ${STAGEDIR}${ETCDIR}/${x}.sample .endfor ${RM} -rf ${WRKSRC}/config (cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${LOGSTASH_HOME}) ${CHMOD} ${BINMODE} ${STAGEDIR}${LOGSTASH_HOME}/bin/* .for x in ${LOGSTASH_JRUBY_BIN_FILES} ${CHMOD} ${BINMODE} ${STAGEDIR}${LOGSTASH_HOME}/${LOGSTASH_JRUBY_SUBDIR}/${x} .endfor ${FIND} ${STAGEDIR}${LOGSTASH_HOME}/vendor/bundle/jruby/3.1.0/gems \ ${STAGEDIR}${LOGSTASH_HOME}/vendor/bundle/jruby/3.1.0/plugins \ ${STAGEDIR}${LOGSTASH_HOME}/vendor/jruby/lib/ruby/gems/shared/gems \ -type d -empty -delete ${INSTALL} -lrs ${STAGEDIR}${ETCDIR} ${STAGEDIR}${LOGSTASH_HOME}/config - ${RM} -rf ${STAGEDIR}${LOGSTASH_HOME}/vendor/jruby/lib/jni - ${RM} -rf ${STAGEDIR}${LOGSTASH_HOME}/vendor/jruby/tmp - ${MKDIR} ${STAGEDIR}${LOGSTASH_HOME}/vendor/jruby/lib/jni - (cd ${WRKSRC}/vendor/jruby/tmp/lib/jni && \ - ${COPYTREE_SHARE} ${ARCH:S/amd64/x86_64/}-FreeBSD \ - ${STAGEDIR}${LOGSTASH_HOME}/vendor/jruby/lib/jni) post-install: ${ECHO} "@sample ${ETCDIR}/logstash.conf.sample" >> ${TMPPLIST} .for x in ${LOGSTASH_CONF_FILES} ${ECHO} "@sample ${ETCDIR}/${x}.sample" >> ${TMPPLIST} .endfor ${ECHO} "@dir logstash/vendor/bundle/jruby/3.1.0/build_info" >> ${TMPPLIST} ${ECHO} "@dir logstash/vendor/bundle/jruby/3.1.0/cache" >> ${TMPPLIST} ${ECHO} "@dir logstash/vendor/bundle/jruby/3.1.0/doc" >> ${TMPPLIST} ${ECHO} "@dir logstash/vendor/bundle/jruby/3.1.0/extensions" >> ${TMPPLIST} ${ECHO} "@dir logstash/vendor/jruby/lib/ruby/gems/shared/cache" >> ${TMPPLIST} ${FIND} -s ${STAGEDIR}${LOGSTASH_HOME} -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST} ${ECHO} "@dir(logstash,logstash,) logstash/data" >> ${TMPPLIST} .include diff --git a/sysutils/logstash8/distinfo b/sysutils/logstash8/distinfo index 3f1e37203c80..d913d2aeec80 100644 --- a/sysutils/logstash8/distinfo +++ b/sysutils/logstash8/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1703545684 -SHA256 (logstash-8.11.3-darwin-x86_64.tar.gz) = 29e7c7b088451482e39a9fe62e25750cd3708dc6cdb468c9fcf90a7021848166 -SIZE (logstash-8.11.3-darwin-x86_64.tar.gz) = 339713536 +TIMESTAMP = 1767131346 +SHA256 (logstash-8.19.9-darwin-x86_64.tar.gz) = 197391163a26a3b02a8285f217227c3c6f69b0c90750447676555f874a0260f9 +SIZE (logstash-8.19.9-darwin-x86_64.tar.gz) = 426132563 diff --git a/sysutils/logstash8/files/logstash.in b/sysutils/logstash8/files/logstash.in index 8e3f931e6f0b..3fa2dc28d9aa 100644 --- a/sysutils/logstash8/files/logstash.in +++ b/sysutils/logstash8/files/logstash.in @@ -1,121 +1,117 @@ #!/bin/sh # Configuration settings for logstash in /etc/rc.conf: # # PROVIDE: logstash # REQUIRE: DAEMON # BEFORE: LOGIN # KEYWORD: shutdown # # logstash_enable (bool): # Default value: "NO" # Flag that determines whether Logstash is enabled. # # logstash_home (string): -# Default value: "/usr/local/logstash" +# Default value: "%%LOGSTASH_HOME%%" # Logstash installation directory. # # logstash_config (string): -# Default value: /usr/local/etc/${name} +# Default value: "%%ETCDIR%%" # Logstash configuration path. # # logstash_log (bool): -# Set to "NO" by default. -# Set it to "YES" to enable logstash logging to file -# Default output to /var/log/logstash.log +# Set to "YES" by default. +# Set it to "YES" to enable logstash logging to file. # -# logstash_log_file (string): -# Default value: "${logdir}/${name}.log" -# Log file path. +# logstash_log_dir (string): +# Default value: "${logdir}/${name}" +# Default output to /var/log/logstash/ # # logstash_java_home (string): -# Default value: "/usr/local/openjdk8" +# Default value: "%%JAVA_HOME%%" # Root directory of the desired Java SDK. # The JAVA_HOME environment variable is set with the contents of this # variable. # # logstash_java_opts (string): # Default value: "" # Options to pass to the Java Virtual Machine. # The JAVA_OPTS environment variable is set with the contents of this # variable. # # logstash_opts (string): # Default value: "" # Additional command line flags for logstash, eg. "-r" # . /etc/rc.subr name=logstash rcvar=logstash_enable load_rc_config ${name} logdir="/var/log" : ${logstash_enable="NO"} : ${logstash_user="logstash"} : ${logstash_group="logstash"} : ${logstash_home="%%LOGSTASH_HOME%%"} : ${logstash_config="%%ETCDIR%%"} : ${logstash_log="YES"} : ${logstash_log_dir="${logdir}/${name}"} : ${logstash_java_home="%%JAVA_HOME%%"} : ${logstash_java_opts=""} : ${logstash_opts=""} pidfile=/var/run/${name}/${name}.pid extra_commands="configtest reload" start_precmd="logstash_precmd" configtest_cmd=configtest logstash_cmd="${logstash_home}/bin/logstash" procname="${logstash_java_home}/bin/java" logstash_chdir=${logstash_home} logstash_log_options="" if checkyesno logstash_log; then logstash_log_options=" -l ${logstash_log_dir}" fi logstash_args="--path.settings ${logstash_config} ${logstash_log_options} ${logstash_opts}" JAVA_OPTS="${logstash_java_opts}" JAVA_HOME="${logstash_java_home}" export JAVA_OPTS export JAVA_HOME command="/usr/sbin/daemon" command_args="-f -p ${pidfile} ${logstash_cmd} ${logstash_args}" required_files="${logstash_home} ${logstash_java_home} ${logstash_cmd} ${logstash_config}" -# Include /usr/local/bin in path because Logstash startup scripts +# Include %%LOCALBASE%%/bin in path because Logstash startup scripts # assume bash is in path. -PATH=/usr/local/bin:$PATH +PATH=%%LOCALBASE%%/bin:$PATH logstash_precmd() { /usr/bin/install -d -o ${logstash_user} -g ${logstash_group} -m 755 ${pidfile%/*} /usr/bin/install -d -o ${logstash_user} -g ${logstash_group} -m 755 ${logstash_log_dir} /usr/bin/install -d -o ${logstash_user} -g ${logstash_group} -m 755 /var/db/logstash /usr/bin/install -d -o ${logstash_user} -g ${logstash_group} -m 755 /var/run/logstash if [ -d ${logstash_home}/data/queue ]; then chown ${logstash_user}:${logstash_group} ${logstash_home}/data/queue fi } configtest() { echo "${name} configtest:" echo "WARNING: this does not check validity of Grok patterns!" - echo "WARNING: this does not check validity of Grok patterns!" - echo "WARNING: this does not check validity of Grok patterns!" ${logstash_cmd} --path.settings ${logstash_config} --config.test_and_exit } - run_rc_command "$1" diff --git a/sysutils/logstash8/files/pkg-message.in b/sysutils/logstash8/files/pkg-message.in index 73894160a3c1..b2350de98feb 100644 --- a/sysutils/logstash8/files/pkg-message.in +++ b/sysutils/logstash8/files/pkg-message.in @@ -1,18 +1,25 @@ [ { type: install message: <