New port: java/wildfly16

WildFly is a flexible, lightweight, managed application
runtime that helps you build amazing applications.
WildFly - new name for JBoss Application Server

Fast Startup
Small Footprint
Modular Design
Unified Configuration and Management

And of course Java EE!

WWW: http://wildfly.org

PR:  236464
Submitted by: Simeo Reig <reig.simeo@gmail.com>
This commit is contained in:
Kurt Jaeger 2019-03-13 17:06:54 +00:00
parent 8bb0993d22
commit 74449513d8
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=495619
6 changed files with 1694 additions and 0 deletions

70
java/wildfly16/Makefile Normal file
View file

@ -0,0 +1,70 @@
# $FreeBSD$
PORTNAME= wildfly16
PORTVERSION= 16.0.0
CATEGORIES= java www
MASTER_SITES= http://download.jboss.org/wildfly/${WILDFLY_VERSION}/
DISTNAME= wildfly-${WILDFLY_VERSION}
MAINTAINER= reig.simeo@gmail.com
COMMENT= Replacement for JBoss Application Server
LICENSE= GPLv2
USE_RC_SUBR= wildfly16
USE_JAVA= yes
JAVA_VERSION= 1.8+
USER= www
GROUP= www
VAR_DIR?= /var
LOG_DIR?= ${VAR_DIR}/log/${PORTNAME}
PID_FILE= ${VAR_DIR}/run/${PORTNAME}.pid
WILDFLY_VERSION=${PORTVERSION}.Final
SUB_FILES= pkg-message
SUB_LIST= APP_SHORTNAME=${PORTNAME} \
LOG_DIR=${LOG_DIR} \
USER=${USER} \
GROUP=${GROUP} \
PID_FILE=${PID_FILE} \
APP_HOME=${PREFIX}/${PORTNAME}
PLIST_SUB= APP_HOME=${PORTNAME}
CONFIG_FILES= appclient/configuration/appclient.xml \
appclient/configuration/logging.properties \
domain/configuration/application-roles.properties \
domain/configuration/application-users.properties \
domain/configuration/default-server-logging.properties \
domain/configuration/domain.xml \
domain/configuration/host-master.xml \
domain/configuration/host-slave.xml \
domain/configuration/host.xml \
domain/configuration/logging.properties \
domain/configuration/mgmt-groups.properties \
domain/configuration/mgmt-users.properties \
standalone/configuration/application-roles.properties \
standalone/configuration/application-users.properties \
standalone/configuration/logging.properties \
standalone/configuration/mgmt-groups.properties \
standalone/configuration/mgmt-users.properties \
standalone/configuration/standalone-full-ha.xml \
standalone/configuration/standalone-full.xml \
standalone/configuration/standalone-ha.xml \
standalone/configuration/standalone-load-balancer.xml \
standalone/configuration/standalone.xml
do-build:
${RM} ${WRKSRC}/bin/*.bat
${RM} ${WRKSRC}/bin/*.ps1
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}
(cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${PORTNAME})
${RMDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}/.installation
.for FILE in ${CONFIG_FILES}
${MV} ${STAGEDIR}${PREFIX}/${PORTNAME}/${FILE} \
${STAGEDIR}${PREFIX}/${PORTNAME}/${FILE}.sample
.endfor
.include <bsd.port.mk>

3
java/wildfly16/distinfo Normal file
View file

@ -0,0 +1,3 @@
TIMESTAMP = 1551807700
SHA256 (wildfly-16.0.0.Final.tar.gz) = 65ec8881c073e1fda0be293037eb7c8d19b38d6e57f83044086d39dc40a26385
SIZE (wildfly-16.0.0.Final.tar.gz) = 180821890

View file

@ -0,0 +1,15 @@
To make WildFly bind to all interfaces add this to rc.conf:
%%APP_SHORTNAME%%_args="-Djboss.bind.address=0.0.0.0"
See
https://community.jboss.org/wiki/JBossProperties
for additional startup properties.
To change JVM args, edit appropriate standalone.conf.
To add the initial admin user:
%%APP_HOME%%/bin/add-user.sh

View file

@ -0,0 +1,98 @@
#!/bin/sh
#
# %%APP_SHORTNAME%% startup script.
# $FreeBSD$
#
# PROVIDE: %%APP_SHORTNAME%%
# REQUIRE: NETWORKING SERVERS
# KEYWORD: shutdown
# Add the following lines to /etc/rc.conf to enable %%APP_SHORTNAME%%:
# %%APP_SHORTNAME%%_enable (bool): Set to "YES" to enable %%APP_SHORTNAME%%
# %%APP_SHORTNAME%%_args (str): Optional arguments to OAJBoss
# %%APP_SHORTNAME%%_log_stdout (str) JBoss log output stdout, filename.
# %%APP_SHORTNAME%%_log_stderr (str) JBoss log output stderr, filename.
#
. /etc/rc.subr
name="%%APP_SHORTNAME%%"
rcvar=%%APP_SHORTNAME%%_enable
extra_commands="status"
load_rc_config $name
%%APP_SHORTNAME%%_logdir="%%LOG_DIR%%"
%%APP_SHORTNAME%%_enable="${%%APP_SHORTNAME%%_enable:-"NO"}"
%%APP_SHORTNAME%%_log_stdout="${%%APP_SHORTNAME%%_log_stdout:-"${%%APP_SHORTNAME%%_logdir}/log"}"
%%APP_SHORTNAME%%_log_stderr="${%%APP_SHORTNAME%%_log_stderr:-"${%%APP_SHORTNAME%%_logdir}/error"}"
%%APP_SHORTNAME%%_args="${%%APP_SHORTNAME%%_args:-""}"
%%APP_SHORTNAME%%_sleep="${%%APP_SHORTNAME%%_sleep:-"5"}"
%%APP_SHORTNAME%%_kill9="${%%APP_SHORTNAME%%_kill9:-""}"
%%APP_SHORTNAME%%_additional_killall="${%%APP_SHORTNAME%%_additional_killall:-""}"
%%APP_SHORTNAME%%_user="%%USER%%"
%%APP_SHORTNAME%%_group="%%GROUP%%"
start_cmd="%%APP_SHORTNAME%%_start"
stop_cmd="%%APP_SHORTNAME%%_stop"
pidfile="%%PID_FILE%%"
status_cmd="%%APP_SHORTNAME%%_status"
WILDFLY_HOME="%%APP_HOME%%"
#minimal requirements must be set for our javavmwrapper
JAVA_VERSION="1.8+"
export JAVA_VERSION
%%APP_SHORTNAME%%_start ()
{
if [ ! -d "${%%APP_SHORTNAME%%_logdir}" ]
then
install -d -o ${%%APP_SHORTNAME%%_user} ${%%APP_SHORTNAME%%_logdir}
fi
echo "%%APP_SHORTNAME%%: making sure all writeable dirs belong to proper user/group"
chown -R ${%%APP_SHORTNAME%%_user}:${%%APP_SHORTNAME%%_group} ${WILDFLY_HOME}/standalone
echo "Starting %%APP_SHORTNAME%%."
daemon -u ${%%APP_SHORTNAME%%_user} ${WILDFLY_HOME}/bin/standalone.sh ${%%APP_SHORTNAME%%_args} >> ${%%APP_SHORTNAME%%_log_stdout} 2>> ${%%APP_SHORTNAME%%_log_stderr}
sleep ${%%APP_SHORTNAME%%_sleep} # let daemon(8) and sh(1) finish before executing pgrep(1)
pgrep -U ${%%APP_SHORTNAME%%_user} -f ${WILDFLY_HOME}/modules > ${pidfile}
chown ${%%APP_SHORTNAME%%_user} $pidfile
}
%%APP_SHORTNAME%%_stop ()
{
# Subvert the check_pid_file procname check.
if [ -f ${pidfile} ]
then
kill `cat ${pidfile}`
# Only if we aware that our setup can hangs, and only after trying simple kill, we can kill it hard way.
if [ ! -z "${%%APP_SHORTNAME%%_kill9}" ]
then
sleep ${%%APP_SHORTNAME%%_sleep}
kill -9 `cat ${pidfile}`
fi
# In some setups, JBoss can spawn some child processess, which could prevent it from stopping, and freeing net ports.
# Let's blindly kill them all, since we are really know what we are doing.
if [ ! -z "${%%APP_SHORTNAME%%_additional_killall}" ]
then
sleep ${%%APP_SHORTNAME%%_sleep}
killall ${%%APP_SHORTNAME%%_additional_killall}
fi
rm ${pidfile}
fi
}
%%APP_SHORTNAME%%_status ()
{
# If running, show pid
if [ -f ${pidfile} ]
then
echo "%%APP_SHORTNAME%% is running as pid" `cat ${pidfile}`
else
echo "%%APP_SHORTNAME%% is not running"
fi
}
run_rc_command "$1"

12
java/wildfly16/pkg-descr Normal file
View file

@ -0,0 +1,12 @@
WildFly is a flexible, lightweight, managed application
runtime that helps you build amazing applications.
WildFly - new name for JBoss Application Server
Fast Startup
Small Footprint
Modular Design
Unified Configuration and Management
And of course Java EE!
WWW: http://wildfly.org

1496
java/wildfly16/pkg-plist Normal file

File diff suppressed because it is too large Load diff