mirror of
https://git.FreeBSD.org/ports.git
synced 2024-10-19 19:59:43 +00:00
net/rabbitmq: update to 3.9.1
Security: CVE-2021-22116 Sponsored by: SkunkWerks, GmbH MFH: 2021Q3
This commit is contained in:
parent
be25abd894
commit
7082af47ea
@ -1,8 +1,7 @@
|
||||
# Created by: Phillip Neumann <pneumann@gmail.com>
|
||||
|
||||
PORTNAME= rabbitmq
|
||||
DISTVERSION= 3.8.3
|
||||
PORTREVISION= 2
|
||||
DISTVERSION= 3.9.1
|
||||
CATEGORIES= net
|
||||
MASTER_SITES= https://github.com/rabbitmq/rabbitmq-server/releases/download/v${PORTVERSION}/
|
||||
DISTNAME= ${PORTNAME}-server-${PORTVERSION}
|
||||
@ -10,16 +9,16 @@ DISTNAME= ${PORTNAME}-server-${PORTVERSION}
|
||||
MAINTAINER= erlang@FreeBSD.org
|
||||
COMMENT= Erlang implementation of AMQP
|
||||
|
||||
LICENSE= MPL11
|
||||
LICENSE= MPL20
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE-MPL-RabbitMQ
|
||||
|
||||
BUILD_DEPENDS= erlang-runtime21>=21.3:lang/erlang-runtime21 \
|
||||
BUILD_DEPENDS= erlang-runtime${ERLANG_VER}>=${ERLANG_VER}.0:lang/erlang-runtime${ERLANG_VER} \
|
||||
elixir>=1.10:lang/elixir \
|
||||
${PYTHON_PKGNAMEPREFIX}simplejson>=2.0:devel/py-simplejson@${PY_FLAVOR} \
|
||||
xmlto:textproc/xmlto \
|
||||
zip:archivers/zip \
|
||||
rsync:net/rsync
|
||||
RUN_DEPENDS= erlang-runtime21>=21.3:lang/erlang-runtime21
|
||||
RUN_DEPENDS= erlang-runtime${ERLANG_VER}>=${ERLANG_VER}.0:lang/erlang-runtime${ERLANG_VER}
|
||||
|
||||
USES= cpe gmake shebangfix tar:xz
|
||||
USE_LOCALE= en_US.UTF-8
|
||||
@ -38,6 +37,8 @@ ALL_TARGET= install
|
||||
USERS= rabbitmq
|
||||
GROUPS= rabbitmq
|
||||
|
||||
SUB_LIST+= ERLANG_LIB=${ERLANG_LIB}
|
||||
|
||||
PLIST_SUB= VERSION=${PORTVERSION}
|
||||
|
||||
CPE_VENDOR= pivotal_software
|
||||
@ -46,25 +47,28 @@ REINPLACE_ARGS= -i ""
|
||||
SCRIPTS_DIR= ${WRKSRC}/deps/rabbit/scripts
|
||||
SHEBANG_FILES= deps/rabbitmq_management/bin/rabbitmqadmin
|
||||
MAKE_ARGS+= PYTHON=${PYTHON_CMD}
|
||||
MAKE_ENV+= PATH="${LOCALBASE}/lib/erlang21/bin:${PATH}" \
|
||||
MAKE_ENV+= PATH="${LOCALBASE}/lib/${ERLANG_LIB}/bin:${PATH}" \
|
||||
RMQ_LIBDIR="${PREFIX}/lib" \
|
||||
MANDIR="${PREFIX}/man" \
|
||||
DESTDIR="${STAGEDIR}"
|
||||
|
||||
MAKE_JOBS_UNSAFE= yes
|
||||
|
||||
ERLANG_LIB= erlang21
|
||||
ERLANG_VER= 24
|
||||
ERLANG_LIB= erlang${ERLANG_VER}
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e 's|/etc/rabbitmq|${PREFIX}/etc/rabbitmq|g ; s|/var/lib|/var/db|g ; s|$${ERL_DIR}erl|${PREFIX}/lib/${ERLANG_LIB}/bin/erl|g' \
|
||||
${SCRIPTS_DIR}/rabbitmq-server \
|
||||
${SCRIPTS_DIR}/rabbitmqctl \
|
||||
${SCRIPTS_DIR}/rabbitmq-env \
|
||||
${SCRIPTS_DIR}/rabbitmq-plugins \
|
||||
${SCRIPTS_DIR}/rabbitmq-defaults \
|
||||
${WRKSRC}/deps/rabbit/docs/rabbitmq-env.conf.5
|
||||
# ensure our OTP is always preferred over other installed versions
|
||||
@${REINPLACE_CMD} -e 's|LOCALBASE|${LOCALBASE}|' \
|
||||
-e 's|ERLANG_LIB|${ERLANG_LIB}|' \
|
||||
${WRKSRC}/deps/rabbit/scripts/rabbitmq-defaults
|
||||
# ensure docs match heir(7) paths
|
||||
@${REINPLACE_CMD} -i '' \
|
||||
-e 's|/etc/rabbitmq|${PREFIX}/etc/rabbitmq|g' \
|
||||
-e 's|/var/lib|/var/db|g' \
|
||||
${WRKSRC}/deps/rabbit/docs/*
|
||||
|
||||
post-install:
|
||||
@${MKDIR} ${STAGEDIR}${PREFIX}/etc/rabbitmq
|
||||
@ -74,7 +78,7 @@ post-install:
|
||||
${STAGEDIR}${PREFIX}/etc/rabbitmq/advanced.config.sample
|
||||
${INSTALL_DATA} ${WRKSRC}/deps/rabbit/docs/rabbitmq.conf.example \
|
||||
${STAGEDIR}${PREFIX}/etc/rabbitmq/rabbitmq.conf.sample
|
||||
.for _file in cuttlefish rabbitmq-defaults rabbitmq-diagnostics rabbitmq-env rabbitmq-plugins rabbitmq-server rabbitmq-upgrade rabbitmqctl
|
||||
.for _file in rabbitmq-defaults rabbitmq-diagnostics rabbitmq-env rabbitmq-plugins rabbitmq-server rrabbitmq-streams rabbitmq-upgrade rabbitmqctl
|
||||
${LN} -s ../lib/rabbitmq_server-${PORTVERSION}/sbin/${_file} ${STAGEDIR}${PREFIX}/sbin
|
||||
.endfor
|
||||
${INSTALL_MAN} ${WRKSRC}/deps/rabbit/docs/*.8 ${STAGEDIR}${MAN1PREFIX}/man/man8
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1587412153
|
||||
SHA256 (rabbitmq-server-3.8.3.tar.xz) = aedc8458701a80167b35958c10090d468c3de11984510b49ec02e777c51b1aba
|
||||
SIZE (rabbitmq-server-3.8.3.tar.xz) = 3304456
|
||||
TIMESTAMP = 1627734741
|
||||
SHA256 (rabbitmq-server-3.9.1.tar.xz) = 0c06e7df05a686141b3ab244a64c147d03dd6fbe34c17e6d98c50325073a6ae1
|
||||
SIZE (rabbitmq-server-3.9.1.tar.xz) = 3328352
|
||||
|
@ -0,0 +1,17 @@
|
||||
--- deps/rabbit/scripts/rabbitmq-defaults.orig 2021-06-24 16:41:31 UTC
|
||||
+++ deps/rabbit/scripts/rabbitmq-defaults
|
||||
@@ -6,7 +6,13 @@
|
||||
## Copyright (c) 2007-2021 VMware, Inc. or its affiliates. All rights reserved.
|
||||
|
||||
### next line potentially updated in package install steps
|
||||
-SYS_PREFIX=
|
||||
+SYS_PREFIX=LOCALBASE
|
||||
+# https://www.rabbitmq.com/relocate.html#unix
|
||||
+export PATH=LOCALBASE/lib/ERLANG_LIB/bin:$PATH
|
||||
+export RABBITMQ_MNESIA_BASE=/var/db/rabbitmq/mnesia
|
||||
+export RABBITMQ_LOG_BASE=/var/log/rabbitmq
|
||||
+# ensure VM and Elixir scripts are running under the same locale
|
||||
+export LANG=en_US.UTF-8
|
||||
|
||||
CLEAN_BOOT_FILE=start_clean
|
||||
SASL_BOOT_FILE=start_sasl
|
@ -1,8 +0,0 @@
|
||||
--- deps/rabbit/scripts/rabbitmq-plugins.orig 2018-03-14 11:00:24 UTC
|
||||
+++ deps/rabbit/scripts/rabbitmq-plugins
|
||||
@@ -29,4 +29,5 @@ set -a
|
||||
# shellcheck source=./rabbitmq-env
|
||||
. "${0%/*}"/rabbitmq-env
|
||||
|
||||
+HOME=/var/db/rabbitmq
|
||||
run_escript rabbitmqctl_escript "${ESCRIPT_DIR:?must be defined}"/rabbitmq-plugins --formatter=plugins -q "$@"
|
@ -1,10 +0,0 @@
|
||||
--- deps/rabbit/scripts/rabbitmq-server.orig 2018-03-14 10:58:29 UTC
|
||||
+++ deps/rabbit/scripts/rabbitmq-server
|
||||
@@ -203,6 +203,7 @@ start_rabbitmq_server() {
|
||||
ensure_thread_pool_size
|
||||
check_start_params &&
|
||||
RABBITMQ_CONFIG_FILE=$RABBITMQ_CONFIG_FILE \
|
||||
+ HOME=/var/db/rabbitmq \
|
||||
ERL_MAX_ETS_TABLES=$ERL_MAX_ETS_TABLES \
|
||||
ERL_CRASH_DUMP=$ERL_CRASH_DUMP \
|
||||
exec ${ERL_DIR}erl \
|
@ -1,8 +0,0 @@
|
||||
--- deps/rabbit/scripts/rabbitmqctl.orig 2018-03-14 10:59:24 UTC
|
||||
+++ deps/rabbit/scripts/rabbitmqctl
|
||||
@@ -29,4 +29,5 @@ set -a
|
||||
# shellcheck source=./rabbitmq-env
|
||||
. "${0%/*}"/rabbitmq-env
|
||||
|
||||
+HOME=/var/db/rabbitmq
|
||||
run_escript rabbitmqctl_escript "${ESCRIPT_DIR:?must be defined}"/rabbitmqctl "$@"
|
@ -1,11 +1,11 @@
|
||||
--- deps/rabbitmq_cli/mix.exs.orig 2021-06-23 10:54:40 UTC
|
||||
--- deps/rabbitmq_cli/mix.exs.orig 2021-06-24 22:46:46 UTC
|
||||
+++ deps/rabbitmq_cli/mix.exs
|
||||
@@ -20,7 +20,7 @@ defmodule RabbitMQCtl.MixfileBase do
|
||||
@@ -11,7 +11,7 @@ defmodule RabbitMQCtl.MixfileBase do
|
||||
[
|
||||
app: :rabbitmqctl,
|
||||
version: "3.8.0-dev",
|
||||
- elixir: ">= 1.7.0 and < 1.11.0",
|
||||
+ elixir: ">= 1.7.0",
|
||||
- elixir: ">= 1.10.4 and < 1.13.0",
|
||||
+ elixir: ">= 1.10.4",
|
||||
build_embedded: Mix.env == :prod,
|
||||
start_permanent: Mix.env == :prod,
|
||||
escript: [main_module: RabbitMQCtl,
|
||||
|
@ -24,7 +24,6 @@ rabbitmq_server="%%PREFIX%%/sbin/rabbitmq-server"
|
||||
rabbitmq_ctl="%%PREFIX%%/sbin/rabbitmqctl"
|
||||
rabbitmq_env_conf="%%PREFIX%%/etc/rabbitmq/rabbitmq-env.conf"
|
||||
pidfile="/var/run/${name}.pid"
|
||||
daemon_pidfile="/var/run/${name}-daemon.pid"
|
||||
|
||||
start_cmd="${name}_start"
|
||||
stop_cmd="${name}_stop"
|
||||
@ -32,14 +31,19 @@ rotate_logs_cmd="su -m ${rabbitmq_user} -c 'sh -c \"${rabbitmq_ctl} rotate_logs\
|
||||
status_cmd="su -m ${rabbitmq_user} -c 'sh -c \"${rabbitmq_ctl} status\"'"
|
||||
extra_commands="rotate_logs status"
|
||||
|
||||
# ensure scripts find erlang_cookie
|
||||
export HOME=/var/db/${name}
|
||||
# set defaults but allow admin to override them in rabbitmq_env_conf
|
||||
: ${RABBITMQ_HOME:=/var/db/${name}}
|
||||
: ${RABBITMQ_LOG_BASE:=/var/log/${name}}
|
||||
: ${RABBITMQ_PID_FILE:=${pidfile}}
|
||||
# require precise OTP version in case multiple erlangs are installed
|
||||
export PATH=%%PREFIX%%/lib/%%ERLANG_LIB%%/bin:$PATH
|
||||
|
||||
if [ -f ${rabbitmq_env_conf} ]; then
|
||||
. ${rabbitmq_env_conf}
|
||||
fi
|
||||
|
||||
export RABBITMQ_HOME=/var/db/${name}
|
||||
|
||||
# Prevent conflicts with amqp_client and rabbit_common applications that
|
||||
# may be installed in ERL_LIBS.
|
||||
unset ERL_LIBS
|
||||
@ -60,23 +64,25 @@ rabbitmq_start()
|
||||
chmod 600 ${RABBITMQ_HOME}/.erlang.cookie
|
||||
fi
|
||||
|
||||
env HOME=${RABBITMQ_HOME} /usr/sbin/daemon -c -f -u ${rabbitmq_user} -p ${pidfile} -P ${daemon_pidfile} ${rabbitmq_server}
|
||||
install -o ${rabbitmq_user} /dev/null ${pidfile}
|
||||
|
||||
debug "Running: rabbitmq-server -detached"
|
||||
su -m ${rabbitmq_user} -c "${rabbitmq_server} -detached" >/dev/null 2>&1
|
||||
debug "Running: rabbitmqctl wait ${pidfile}"
|
||||
${rabbitmq_ctl} wait ${pidfile} >/dev/null 2>&1
|
||||
su -m ${rabbitmq_user} -c "${rabbitmq_ctl} wait ${pidfile}" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
rabbitmq_stop()
|
||||
{
|
||||
echo "Stopping ${name}."
|
||||
if [ -f ${daemon_pidfile} ]; then
|
||||
read daemon_pid < ${daemon_pidfile}
|
||||
if [ -f ${pidfile} ]; then
|
||||
debug "Running: ${rabbitmq_ctl} stop ${pidfile}"
|
||||
su -m ${rabbitmq_user} -c "sh -c \"${rabbitmq_ctl} stop ${pidfile}\"" >/dev/null 2>&1
|
||||
[ -n "${daemon_pid}" ] && wait_for_pids ${daemon_pid}
|
||||
su -m ${rabbitmq_user} -c "${rabbitmq_ctl} stop ${pidfile}" >/dev/null 2>&1
|
||||
else
|
||||
debug "Running: ${rabbitmq_ctl} stop"
|
||||
su -m ${rabbitmq_user} -c "sh -c \"${rabbitmq_ctl} stop\"" >/dev/null 2>&1
|
||||
debug "Running: ${rabbitmq_ctl} shutdown"
|
||||
su -m ${rabbitmq_user} -c "${rabbitmq_ctl} shutdown" >/dev/null 2>&1
|
||||
fi
|
||||
}
|
||||
|
||||
run_rc_command "$1"
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user