Revert "Remove directories used by the server release pipeline"

This reverts commit b1eaf8c9e2.
This commit is contained in:
Philip Kuryloski 2021-02-26 09:05:30 +01:00
parent 3430906ad8
commit 36fef6b5b7
32 changed files with 2814 additions and 0 deletions

View File

@ -0,0 +1,171 @@
SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
ifneq ($(filter-out clean,$(MAKECMDGOALS)),)
ifeq ($(SOURCE_DIST_FILE),)
$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
endif
ifneq ($(words $(SOURCE_DIST_FILE)),1)
$(error Multiple source archives found; please specify SOURCE_DIST_FILE)
endif
endif
VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
ifeq ($(VERSION),)
$(error Cannot determine version; please specify VERSION)
endif
# $(RPM_VERSION) doesn't include the package revision: this one is only
# set in the .spec file.
RPM_VERSION = $(subst -,~,$(VERSION))
RPM_ORIG_TARBALL = rabbitmq-server-$(VERSION).tar.xz
TOP_DIR = $(shell pwd)
# Under debian we do not want to check build dependencies, since that
# only checks build-dependencies using rpms, not debs
DEFINES = --define 'upstream_version $(VERSION)' \
--define '_topdir $(TOP_DIR)' --define '_tmppath $(TOP_DIR)/tmp' \
--define '_sysconfdir /etc' --define '_localstatedir /var'
RPM_OS ?= fedora
DO_SIGN ?= yes
ifeq "$(RPM_OS)" "sles11"
FUNCTION_LIBRARY=
REQUIRES=/sbin/chkconfig /sbin/service
OS_DEFINES=--define '_initrddir /etc/init.d' --define 'dist .sles11' --define 'suse_version 1012'
SPEC_DEFINES=--define 'group_tag Productivity/Networking/Other'
START_PROG=startproc
DO_SIGN=no
else ifeq "$(RPM_OS)" "opensuse"
FUNCTION_LIBRARY=
REQUIRES=/sbin/chkconfig /sbin/service
OS_DEFINES=--define '_unitdir /usr/lib/systemd/system' --define 'dist .suse' --define 'suse_version 1315'
SPEC_DEFINES=--define 'group_tag Productivity/Networking/Other'
START_PROG=startproc
else
FUNCTION_LIBRARY=\# Source function library.\n. /etc/init.d/functions
REQUIRES=chkconfig initscripts
OS_DEFINES=--define '_initrddir /etc/rc.d/init.d'
ifeq "$(RPM_OS)" "rhel6"
SPEC_DEFINES=--define 'group_tag Development/Libraries' --define 'dist .el6' --define 'rhel 6'
else ifeq "$(RPM_OS)" "rhel7"
SPEC_DEFINES=--define 'group_tag Development/Libraries' --define '_unitdir /usr/lib/systemd/system' --define 'dist .el7' --define 'rhel 7'
else ifeq "$(RPM_OS)" "rhel8"
SPEC_DEFINES=--define 'group_tag Development/Libraries' --define '_unitdir /usr/lib/systemd/system' --define 'dist .el8' --define 'rhel 8'
else
SPEC_DEFINES=--define 'group_tag Development/Libraries'
endif
START_PROG=daemon
endif
# Package signing.
#
# At least the key ID is mandatory ($(SIGNING_KEY)). If it's set, we
# call `rpm --addsign`, otherwise we do nothing.
#
# To maintain backward compatibility, the caller can also specify
# $(KEYSDIR) or $(GNUPG_PATH) and we set GNUPGHOME accordingly.
ifneq ($(KEYSDIR),)
GNUPGHOME = $(KEYSDIR)/keyring/.gnupg
export GNUPGHOME
endif
ifneq ($(GNUPG_PATH),)
GNUPGHOME = $(GNUPG_PATH)/.gnupg
export GNUPGHOME
endif
unexport DEPS_DIR
unexport ERL_LIBS
MAKEOVERRIDES =
.PHONY: all package clean
all: package
@:
package: clean
# Log Erlang version.
@echo
@echo '--------------------------------------------------'
@echo "Erlang and Elixir versions used to compile:"
@elixir --version
@echo '--------------------------------------------------'
@echo
# If a signing key ID was specified, verify that the key is available
# before starting a possibly long build. At the same time, display some
# useful informations on the key so the caller can double-check if he
# wants.
ifneq ($(SIGNING_KEY),)
ifeq ($(DO_SIGN),yes)
@echo
@echo '--------------------------------------------------'
@echo "The package will be signed with key $(SIGNING_KEY):"
@gpg -K "$(SIGNING_KEY)"
@echo '--------------------------------------------------'
@echo
else
@echo
@echo '--------------------------------------------------'
@echo "Packages of type '$(RPM_OS)' are not signed because"
@echo "the signature can't be verified on the target OS"
@echo '--------------------------------------------------'
@echo
endif
endif
# Create the build tree and populate it.
mkdir -p BUILD SOURCES SPECS SRPMS RPMS tmp
cp $(SOURCE_DIST_FILE) SOURCES/$(RPM_ORIG_TARBALL)
cp rabbitmq-server.spec SPECS/rabbitmq-server.spec.in
cp rabbitmq-server.service SOURCES/rabbitmq-server.service
cp rabbitmq-server.tmpfiles SOURCES/rabbitmq-server.tmpfiles
sed \
-e 's|^START_PROG=.*$$|START_PROG="$(START_PROG)"|' \
-e 's|^@FUNCTION_LIBRARY@|$(FUNCTION_LIBRARY)|' \
< rabbitmq-server.init \
> SOURCES/rabbitmq-server.init
cp rabbitmq-server.logrotate SOURCES/rabbitmq-server.logrotate
# Possibly update the changelog inside the spec (in the created build
# directory):
# - if it contains an entry for the specified version, do nothing;
# - otherwise, prepend a generated entry using "1" as the package
# revision.
scripts/update-changelog.sh SPECS/rabbitmq-server.spec.in "$(RPM_VERSION)"
sed -e 's|%%VERSION%%|$(RPM_VERSION)|;s|%%REQUIRES%%|$(REQUIRES)|' \
< SPECS/rabbitmq-server.spec.in \
> SPECS/rabbitmq-server.spec
# Finally build the package!
rpmbuild -ba --nodeps SPECS/rabbitmq-server.spec $(DEFINES) \
$(OS_DEFINES) $(SPEC_DEFINES)
# Before we remove the source directory, copy the possibly updated
# debian/changelog to the original debian subdirectory, if the caller
# asks for it. He is then responsible for committing it.
ifeq ($(SAVE_CHANGELOG),yes)
mv SPECS/rabbitmq-server.spec.in rabbitmq-server.spec
endif
rm -rf SOURCES SPECS BUILD tmp
# If a PGP key is specified, sign source and binary packages. We start
# rpm(1) in a new session and redirect its stdin so that it doesn't
# prompt for a passphrase.
# https://ask.fedoraproject.org/en/question/56107/can-gpg-agent-be-used-when-signing-rpm-packages/?answer=76395#post-id-76395
ifeq ($(DO_SIGN),yes)
ifneq ($(SIGNING_KEY),)
setsid \
rpm --addsign \
--define '_signature gpg' \
--define '_gpg_name $(SIGNING_KEY)' \
SRPMS/*-$(RPM_VERSION)*.rpm \
RPMS/noarch/*-$(RPM_VERSION)*.rpm \
< /dev/null
endif
endif
# If $(PACKAGES_DIR) is specified, move all package files to that
# location.
ifneq ($(PACKAGES_DIR),)
mkdir -p "$(PACKAGES_DIR)"
mv SRPMS/*-$(RPM_VERSION)*.rpm RPMS/noarch/*-$(RPM_VERSION)*.rpm \
"$(PACKAGES_DIR)"
endif
clean:
rm -rf SOURCES SPECS RPMS SRPMS BUILD tmp

View File

@ -0,0 +1,192 @@
#!/bin/sh
#
# rabbitmq-server RabbitMQ broker
#
# chkconfig: - 80 05
# description: RabbitMQ is a multi-protocol messaging broker
#
### BEGIN INIT INFO
# Provides: rabbitmq-server
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: RabbitMQ broker
# Short-Description: RabbitMQ is a multi-protocol messaging broker
### END INIT INFO
@FUNCTION_LIBRARY@
PATH=/sbin:/usr/sbin:/bin:/usr/bin
NAME=rabbitmq-server
DAEMON=/usr/sbin/${NAME}
CONTROL=/usr/sbin/rabbitmqctl
DESC=rabbitmq-server
USER=rabbitmq
PID_FILE=/var/run/rabbitmq/pid
RABBITMQ_STARTUP_TIMEOUT=600
START_PROG= # Set when building package
LOCK_FILE=/var/lock/subsys/$NAME
test -x $DAEMON || exit 0
test -x $CONTROL || exit 0
RETVAL=0
set -e
[ -f /etc/default/${NAME} ] && . /etc/default/${NAME}
# $RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR is a directory where rabbitmq-server(8)
# console output (both stdout and sterr) is redirected. It defaults to
# /var/log/rabbitmq which is configured by the package already (i.e. the
# directory is created and its ownership is set).
#
# We still look at the value of $RABBITMQ_LOG_BASE, possibly set in
# /etc/default/rabbitmq-server for backward compatibility. But we use a
# specific variable name here (instead of $RABBITMQ_LOG_BASE) to avoid any
# confusion with RabbitMQ's own logging configuration. Indeed, the console
# output redirection is a responsibility of the package, not RabbitMQ itself.
: ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR:=${RABBITMQ_LOG_BASE:-/var/log/rabbitmq}}
ensure_pid_dir () {
PID_DIR=`dirname ${PID_FILE}`
if [ ! -d ${PID_DIR} ] ; then
mkdir -p ${PID_DIR}
chown -R ${USER}:${USER} ${PID_DIR}
chmod 755 ${PID_DIR}
fi
}
remove_pid () {
rm -f ${PID_FILE}
rmdir `dirname ${PID_FILE}` || :
}
start_rabbitmq () {
status_rabbitmq quiet
if [ $RETVAL = 0 ] ; then
echo RabbitMQ is currently running
else
RETVAL=0
ensure_pid_dir
set +e
RABBITMQ_PID_FILE=$PID_FILE $START_PROG $DAEMON \
> "${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/startup_log" \
2> "${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/startup_err" \
0<&- &
$CONTROL wait --timeout $RABBITMQ_STARTUP_TIMEOUT $PID_FILE >/dev/null 2>&1
RETVAL=$?
set -e
case "$RETVAL" in
0)
echo SUCCESS
if [ -n "$LOCK_FILE" ] ; then
touch $LOCK_FILE
fi
;;
*)
remove_pid
echo FAILED - check ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/startup_\{log, _err\}
RETVAL=1
;;
esac
fi
}
stop_rabbitmq () {
status_rabbitmq quiet
if [ $RETVAL = 0 ] ; then
set +e
$CONTROL stop ${PID_FILE} \
> ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/shutdown_log \
2> ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/shutdown_err
RETVAL=$?
set -e
if [ $RETVAL = 0 ] ; then
remove_pid
if [ -n "$LOCK_FILE" ] ; then
rm -f $LOCK_FILE
fi
else
echo FAILED - check ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/shutdown_\{log, _err\}
fi
else
echo RabbitMQ is not running
RETVAL=0
fi
}
status_rabbitmq() {
set +e
if [ "$1" != "quiet" ] ; then
$CONTROL status 2>&1
else
$CONTROL status > /dev/null 2>&1
fi
if [ $? != 0 ] ; then
RETVAL=3
fi
set -e
}
rotate_logs_rabbitmq() {
set +e
$CONTROL rotate_logs
if [ $? != 0 ] ; then
RETVAL=1
fi
set -e
}
restart_running_rabbitmq () {
status_rabbitmq quiet
if [ $RETVAL = 0 ] ; then
restart_rabbitmq
else
echo RabbitMQ is not runnning
RETVAL=0
fi
}
restart_rabbitmq() {
stop_rabbitmq
start_rabbitmq
}
case "$1" in
start)
echo -n "Starting $DESC: "
start_rabbitmq
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
stop_rabbitmq
echo "$NAME."
;;
status)
status_rabbitmq
;;
rotate-logs)
echo -n "Rotating log files for $DESC: "
rotate_logs_rabbitmq
;;
force-reload|reload|restart)
echo -n "Restarting $DESC: "
restart_rabbitmq
echo "$NAME."
;;
try-restart)
echo -n "Restarting $DESC: "
restart_running_rabbitmq
echo "$NAME."
;;
*)
echo "Usage: $0 {start|stop|status|rotate-logs|restart|condrestart|try-restart|reload|force-reload}" >&2
RETVAL=1
;;
esac
exit $RETVAL

View File

@ -0,0 +1,7 @@
/var/log/rabbitmq/*.log {
weekly
missingok
rotate 20
compress
notifempty
}

View File

@ -0,0 +1,41 @@
[Unit]
Description=RabbitMQ broker
After=syslog.target network.target
[Service]
Type=notify
User=rabbitmq
Group=rabbitmq
UMask=0027
NotifyAccess=all
TimeoutStartSec=600
# To override LimitNOFILE, create the following file:
#
# /etc/systemd/system/rabbitmq-server.service.d/limits.conf
#
# with the following content:
#
# [Service]
# LimitNOFILE=65536
LimitNOFILE=32768
# Note: systemd on CentOS 7 complains about in-line comments,
# so only append them here
#
# Restart:
# The following setting will automatically restart RabbitMQ
# in the event of a failure. systemd service restarts are not a
# replacement for service monitoring. Please see
# https://www.rabbitmq.com/monitoring.html
Restart=on-failure
RestartSec=10
WorkingDirectory=/var/lib/rabbitmq
ExecStart=/usr/sbin/rabbitmq-server
ExecStop=/usr/sbin/rabbitmqctl shutdown
# See rabbitmq/rabbitmq-server-release#51
SuccessExitStatus=69
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,520 @@
%define debug_package %{nil}
%define erlang_minver 22.3
Name: rabbitmq-server
Version: %%VERSION%%
Release: 1%{?dist}
License: MPLv2.0 and MIT and ASL 2.0 and BSD
Group: %{group_tag}
Source: https://www.rabbitmq.com/releases/rabbitmq-server/v%{upstream_version}/%{name}-%{upstream_version}.tar.xz
Source1: rabbitmq-server.init
Source2: rabbitmq-server.logrotate
Source3: rabbitmq-server.service
Source4: rabbitmq-server.tmpfiles
URL: https://www.rabbitmq.com/
BuildArch: noarch
BuildRequires: erlang >= %{erlang_minver}
BuildRequires: elixir
BuildRequires: gzip, sed, zip, rsync
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
BuildRequires: systemd
%endif
Requires: erlang >= %{erlang_minver}
Requires: logrotate, socat
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%{_arch}-root
Summary: The RabbitMQ server
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
Requires(pre): systemd
Requires(post): systemd
Requires(preun): systemd
%else
Requires(post): %%REQUIRES%%
Requires(pre): %%REQUIRES%%
%endif
%description
RabbitMQ is an open source multi-protocol messaging broker.
# We want to install into /usr/lib, even on 64-bit platforms
%define _rabbit_libdir %{_exec_prefix}/lib/rabbitmq
%define _rabbit_erllibdir %{_rabbit_libdir}/lib/rabbitmq_server-%{upstream_version}
%define _rabbit_server_ocf scripts/rabbitmq-server.ocf
%define _plugins_state_dir %{_localstatedir}/lib/rabbitmq/plugins
%define _rabbit_server_ha_ocf scripts/rabbitmq-server-ha.ocf
%define _rabbitmqctl_autocomplete scripts/rabbitmqctl-autocomplete.sh
%define _rabbitmq_user rabbitmq
%define _rabbitmq_group rabbitmq
%define _maindir %{buildroot}%{_rabbit_erllibdir}
%prep
%setup -q -n %{name}-%{upstream_version}
%build
cp -a deps/rabbit/docs/README-for-packages %{_builddir}/rabbitmq-server-%{upstream_version}/README
env -u DEPS_DIR make dist manpages
%install
rm -rf %{buildroot}
env -u DEPS_DIR make install install-bin install-man DESTDIR=%{buildroot} PREFIX=%{_exec_prefix} RMQ_ROOTDIR=%{_rabbit_libdir} RMQ_ERLAPP_DIR=%{_rabbit_erllibdir} MANDIR=%{_mandir}
mkdir -p %{buildroot}%{_localstatedir}/lib/rabbitmq/mnesia
mkdir -p %{buildroot}%{_localstatedir}/log/rabbitmq
#Copy all necessary lib files etc.
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
install -p -D -m 0644 %{S:3} %{buildroot}%{_unitdir}/%{name}.service
%else
install -p -D -m 0755 %{S:1} %{buildroot}%{_initrddir}/rabbitmq-server
%endif
install -p -D -m 0755 %{_rabbit_server_ocf} %{buildroot}%{_exec_prefix}/lib/ocf/resource.d/rabbitmq/rabbitmq-server
install -p -D -m 0755 %{_rabbit_server_ha_ocf} %{buildroot}%{_exec_prefix}/lib/ocf/resource.d/rabbitmq/rabbitmq-server-ha
install -p -D -m 0644 %{S:2} %{buildroot}%{_sysconfdir}/logrotate.d/rabbitmq-server
install -p -D -m 0755 %{_rabbitmqctl_autocomplete} %{buildroot}%{_sysconfdir}/profile.d/rabbitmqctl-autocomplete.sh
install -p -D -m 0755 scripts/zsh_autocomplete.sh %{buildroot}%{_datarootdir}/zsh/vendor-functions/_enable_rabbitmqctl_completion
mkdir -p %{buildroot}%{_sysconfdir}/rabbitmq
mkdir -p %{buildroot}%{_sbindir}
sed \
-e 's|@RABBITMQ_USER@|%{_rabbitmq_user}|' -e 's|@RABBITMQ_GROUP@|%{_rabbitmq_group}|' \
< scripts/rabbitmq-script-wrapper \
> %{buildroot}%{_sbindir}/rabbitmqctl
chmod 0755 %{buildroot}%{_sbindir}/rabbitmqctl
for script in rabbitmq-server rabbitmq-plugins rabbitmq-diagnostics rabbitmq-queues rabbitmq-upgrade; do \
cp -a %{buildroot}%{_sbindir}/rabbitmqctl \
%{buildroot}%{_sbindir}/$script; \
done
%if 0%{?fedora} > 14 || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
install -D -p -m 0644 %{SOURCE4} %{buildroot}%{_prefix}/lib/tmpfiles.d/%{name}.conf
%endif
rm %{_maindir}/LICENSE* %{_maindir}/INSTALL
#Build the list of files
echo '%defattr(-,root,root, -)' >%{_builddir}/%{name}.files
find %{buildroot} -path %{buildroot}%{_sysconfdir} -prune -o '!' -type d -printf "/%%P\n" >>%{_builddir}/%{name}.files
find %{buildroot} -path "*%{_initrddir}*" -type f -printf "/%%P\n" >>%{_builddir}/%{name}.files
%pre
# If the log directory exists, record its permissions so we can restore
# them after an upgrade. The goal is to set the permissions to 0750 on a
# fresh install but to keep permissions set by the user or a different
# default from a previous package.
if test -d /var/log/rabbitmq; then
stat --format '%a' /var/log/rabbitmq > /var/log/rabbitmq/permissions
fi
if [ "$1" = 2 ]; then
# Upgrade:
# Stop previous instance of rabbitmq-server. But before doing this, we
# also record if the service is running: it is used again in %post to
# restart the service.
if %{_sbindir}/rabbitmqctl status >/dev/null 2>&1; then
touch %{_localstatedir}/lib/rabbitmq/rabbitmq-running-before-upgrade
else
rm -f %{_localstatedir}/lib/rabbitmq/rabbitmq-running-before-upgrade
fi
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
systemctl stop rabbitmq-server
%else
/sbin/service rabbitmq-server stop
%endif
fi
# create rabbitmq group
if ! getent group rabbitmq >/dev/null; then
groupadd -r rabbitmq
fi
# create rabbitmq user
if ! getent passwd rabbitmq >/dev/null; then
useradd -r -g rabbitmq -d %{_localstatedir}/lib/rabbitmq -s /sbin/nologin rabbitmq \
-c "RabbitMQ messaging server"
fi
%post
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
# %%systemd_post %%{name}.service
# manual expansion of systemd_post as this doesn't appear to
# expand correctly on debian machines
if [ $1 -eq 1 ] ; then
# Initial installation
systemctl preset %{name}.service >/dev/null 2>&1 || :
fi
systemctl daemon-reload
%else
/sbin/chkconfig --add %{name}
%endif
chmod -R o-rwx,g-w %{_localstatedir}/lib/rabbitmq/mnesia
chgrp rabbitmq %{_sysconfdir}/rabbitmq
# Restore permissions saved during %pre. See comment in %pre for the
# reason behind this.
if test -f /var/log/rabbitmq/permissions; then
chmod "$(cat /var/log/rabbitmq/permissions)" /var/log/rabbitmq
rm -f /var/log/rabbitmq/permissions
fi
if [ "$1" = 2 ] ; then
# Upgrade:
# Restart the service if it was running before the upgrade.
if [ -f %{_localstatedir}/lib/rabbitmq/rabbitmq-running-before-upgrade ]; then
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
# %%systemd_postun_with_restart %%{name}.service
# manual expansion of systemd_postun_with_restart as this doesn't appear to
# expand correctly on debian machines
systemctl restart %{name}.service >/dev/null 2>&1 || :
%else
/sbin/service %{name} restart
%endif
rm -f %{_localstatedir}/lib/rabbitmq/rabbitmq-running-before-upgrade
fi
fi
if [ -n "$ZSH_VERSION" ]; then
echo "Z Shell detected.
to enable rabbitmqctl autocompletion add the following to your .zshrc file:
autoload _enable_rabbitmqctl_completion; _enable_rabbitmqctl_completion"
fi
%preun
if [ $1 = 0 ]; then
#Complete uninstall
%if 0%{?fedora} || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
systemctl stop rabbitmq-server
%else
/sbin/service rabbitmq-server stop
/sbin/chkconfig --del rabbitmq-server
%endif
# We do not remove /var/log and /var/lib directories
# Leave rabbitmq user and group
fi
# Clean out plugin activation state, both on uninstall and upgrade
rm -rf %{_plugins_state_dir}
for ext in rel script boot ; do
rm -f %{_rabbit_erllibdir}/ebin/rabbit.$ext
done
%postun
%if 0%{?fedora} > 17 || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1315
# For prior versions older than this, do a conversion
# from sysv to systemd
%triggerun -- %{name} < 3.6.5
# Save the current service runlevel info
# User must manually run systemd-sysv-convert --apply opensips
# to migrate them to systemd targets
systemd-sysv-convert --save %{name} >/dev/null 2>&1 ||:
# Run these because the SysV package being removed won't do them
/sbin/chkconfig --del %{name} >/dev/null 2>&1 || :
systemctl try-restart %{name}.service >/dev/null 2>&1 || :
%endif
%files -f ../%{name}.files
%defattr(-,root,root,-)
%attr(0755, rabbitmq, rabbitmq) %dir %{_localstatedir}/lib/rabbitmq
%attr(0750, rabbitmq, rabbitmq) %dir %{_localstatedir}/lib/rabbitmq/mnesia
%attr(0755, rabbitmq, rabbitmq) %dir %{_localstatedir}/log/rabbitmq
%attr(2755, -, rabbitmq) %dir %{_sysconfdir}/rabbitmq
%{_sysconfdir}/profile.d/rabbitmqctl-autocomplete.sh
%{_datarootdir}/zsh/vendor-functions/_enable_rabbitmqctl_completion
%config(noreplace) %{_sysconfdir}/logrotate.d/rabbitmq-server
%doc LICENSE*
%doc README
%doc deps/rabbit/docs/set_rabbitmq_policy.sh.example
%clean
rm -rf %{buildroot}
%changelog
* Sun Sep 8 2019 info@rabbitmq.com 3.8.0~rc.1-1
- New upstream release.
* Tue Aug 20 2019 info@rabbitmq.com 3.8.0~beta.7-1
- New upstream release.
* Sun Aug 4 2019 info@rabbitmq.com 3.8.0~beta.6-1
- New upstream release.
* Tue Jul 9 2019 info@rabbitmq.com 3.8.0~beta.5-1
- New upstream release.
* Fri May 10 2019 info@rabbitmq.com 3.8.0~beta.4-1
- New upstream release.
* Wed Mar 6 2019 info@rabbitmq.com 3.8.0~beta.3-1
- New upstream release.
* Thu Jan 31 2019 info@rabbitmq.com 3.8.0~beta.2-1
- New upstream release.
* Thu Nov 8 2018 info@rabbitmq.com 3.8.0~beta.1-1
- New upstream release.
* Wed Dec 13 2017 info@rabbitmq.com 3.7.1~beta.1-1
- New upstream release.
* Wed Nov 29 2017 info@rabbitmq.com 3.7.0-1
- New upstream release.
* Thu Nov 16 2017 info@rabbitmq.com 3.7.0~rc.2-1
- New upstream release.
* Mon Sep 18 2017 info@rabbitmq.com 3.7.0~rc.1-1
- New upstream release.
* Tue Sep 12 2017 info@rabbitmq.com 3.7.0~beta.20-1
- New upstream release.
* Mon Sep 11 2017 michael@rabbitmq.com 3.6.12-1
- New Upstream Release
* Wed Aug 16 2017 michael@rabbitmq.com 3.6.11-1
- New Upstream Release
* Thu May 25 2017 michael@rabbitmq.com 3.6.10-1
- New Upstream Release
* Wed Mar 29 2017 michael@rabbitmq.com 3.6.9-1
- New Upstream Release
* Fri Mar 17 2017 michael@rabbitmq.com 3.6.8-1
- New Upstream Release
* Wed Mar 15 2017 michael@rabbitmq.com 3.6.7-1
- New Upstream Release
* Mon Nov 21 2016 michael@rabbitmq.com 3.6.6-1
- New Upstream Release
* Fri Aug 5 2016 michael@rabbitmq.com 3.6.5-1
- New Upstream Release
* Fri Jul 29 2016 michael@rabbitmq.com 3.6.4-1
- New Upstream Release
* Wed Jul 6 2016 michael@rabbitmq.com 3.6.3-1
- New Upstream Release
* Thu May 19 2016 michael@rabbitmq.com 3.6.2-1
- New Upstream Release
* Tue Mar 1 2016 michael@rabbitmq.com 3.6.1-1
- New Upstream Release
* Tue Dec 22 2015 michael@rabbitmq.com 3.6.0-1
- New Upstream Release
* Tue Dec 15 2015 michael@rabbitmq.com 3.5.7-1
- New Upstream Release
* Wed Oct 7 2015 michael@rabbitmq.com 3.5.6-1
- New Upstream Release
* Thu Sep 24 2015 jean-sebastien@rabbitmq.com 3.5.5-3
- Fix bashism in rabbitmq-script-wrapper
* Thu Sep 24 2015 jean-sebastien@rabbitmq.com 3.5.5-1
- New Upstream Release
* Tue Jul 21 2015 michael@rabbitmq.com 3.5.4-1
- New Upstream Release
* Fri May 22 2015 jean-sebastien@rabbitmq.com 3.5.3-1
- New Upstream Release
* Tue May 12 2015 jean-sebastien@rabbitmq.com 3.5.2-1
- New Upstream Release
* Thu Apr 2 2015 michael@rabbitmq.com 3.5.1-1
- New Upstream Release
* Wed Mar 11 2015 jean-sebastien@rabbitmq.com 3.5.0-1
- New Upstream Release
* Wed Feb 11 2015 michael@rabbitmq.com 3.4.4-1
- New Upstream Release
* Tue Jan 6 2015 jean-sebastien@rabbitmq.com 3.4.3-1
- New Upstream Release
* Wed Nov 26 2014 simon@rabbitmq.com 3.4.2-1
- New Upstream Release
* Wed Oct 29 2014 simon@rabbitmq.com 3.4.1-1
- New Upstream Release
* Tue Oct 21 2014 simon@rabbitmq.com 3.4.0-1
- New Upstream Release
* Mon Aug 11 2014 simon@rabbitmq.com 3.3.5-1
- New Upstream Release
* Tue Jun 24 2014 simon@rabbitmq.com 3.3.4-1
- New Upstream Release
* Mon Jun 16 2014 simon@rabbitmq.com 3.3.3-1
- New Upstream Release
* Mon Jun 9 2014 simon@rabbitmq.com 3.3.2-1
- New Upstream Release
* Tue Apr 29 2014 simon@rabbitmq.com 3.3.1-1
- New Upstream Release
* Wed Apr 2 2014 simon@rabbitmq.com 3.3.0-1
- New Upstream Release
* Mon Mar 3 2014 simon@rabbitmq.com 3.2.4-1
- New Upstream Release
* Thu Jan 23 2014 emile@rabbitmq.com 3.2.3-1
- New Upstream Release
* Tue Dec 10 2013 emile@rabbitmq.com 3.2.2-1
- New Upstream Release
* Wed Oct 23 2013 emile@rabbitmq.com 3.2.0-1
- New Upstream Release
* Thu Aug 15 2013 simon@rabbitmq.com 3.1.5-1
- New Upstream Release
* Tue Jun 25 2013 tim@rabbitmq.com 3.1.3-1
- New Upstream Release
* Mon Jun 24 2013 tim@rabbitmq.com 3.1.2-1
- New Upstream Release
* Mon May 20 2013 tim@rabbitmq.com 3.1.1-1
- Test release
* Wed May 1 2013 simon@rabbitmq.com 3.1.0-1
- New Upstream Release
* Tue Dec 11 2012 simon@rabbitmq.com 3.0.1-1
- New Upstream Release
* Fri Nov 16 2012 simon@rabbitmq.com 3.0.0-1
- New Upstream Release
* Fri Dec 16 2011 steve@rabbitmq.com 2.7.1-1
- New Upstream Release
* Tue Nov 8 2011 steve@rabbitmq.com 2.7.0-1
- New Upstream Release
* Fri Sep 9 2011 tim@rabbitmq.com 2.6.1-1
- New Upstream Release
* Fri Aug 26 2011 tim@rabbitmq.com 2.6.0-1
- New Upstream Release
* Mon Jun 27 2011 simon@rabbitmq.com 2.5.1-1
- New Upstream Release
* Thu Jun 9 2011 jerryk@vmware.com 2.5.0-1
- New Upstream Release
* Thu Apr 7 2011 Alexandru Scvortov <alexandru@rabbitmq.com> 2.4.1-1
- New Upstream Release
* Tue Mar 22 2011 Alexandru Scvortov <alexandru@rabbitmq.com> 2.4.0-1
- New Upstream Release
* Thu Feb 3 2011 simon@rabbitmq.com 2.3.1-1
- New Upstream Release
* Tue Feb 1 2011 simon@rabbitmq.com 2.3.0-1
- New Upstream Release
* Mon Nov 29 2010 rob@rabbitmq.com 2.2.0-1
- New Upstream Release
* Tue Oct 19 2010 vlad@rabbitmq.com 2.1.1-1
- New Upstream Release
* Tue Sep 14 2010 marek@rabbitmq.com 2.1.0-1
- New Upstream Release
* Mon Aug 23 2010 mikeb@rabbitmq.com 2.0.0-1
- New Upstream Release
* Wed Jul 14 2010 Emile Joubert <emile@rabbitmq.com> 1.8.1-1
- New Upstream Release
* Tue Jun 15 2010 Matthew Sackman <matthew@rabbitmq.com> 1.8.0-1
- New Upstream Release
* Mon Feb 15 2010 Matthew Sackman <matthew@lshift.net> 1.7.2-1
- New Upstream Release
* Fri Jan 22 2010 Matthew Sackman <matthew@lshift.net> 1.7.1-1
- New Upstream Release
* Mon Oct 5 2009 David Wragg <dpw@lshift.net> 1.7.0-1
- New upstream release
* Wed Jun 17 2009 Matthias Radestock <matthias@lshift.net> 1.6.0-1
- New upstream release
* Tue May 19 2009 Matthias Radestock <matthias@lshift.net> 1.5.5-1
- Maintenance release for the 1.5.x series
* Mon Apr 6 2009 Matthias Radestock <matthias@lshift.net> 1.5.4-1
- Maintenance release for the 1.5.x series
* Tue Feb 24 2009 Tony Garnock-Jones <tonyg@lshift.net> 1.5.3-1
- Maintenance release for the 1.5.x series
* Mon Feb 23 2009 Tony Garnock-Jones <tonyg@lshift.net> 1.5.2-1
- Maintenance release for the 1.5.x series
* Mon Jan 19 2009 Ben Hood <0x6e6562@gmail.com> 1.5.1-1
- Maintenance release for the 1.5.x series
* Wed Dec 17 2008 Matthias Radestock <matthias@lshift.net> 1.5.0-1
- New upstream release
* Thu Jul 24 2008 Tony Garnock-Jones <tonyg@lshift.net> 1.4.0-1
- New upstream release
* Mon Mar 3 2008 Adrien Pierard <adrian@lshift.net> 1.3.0-1
- New upstream release
* Wed Sep 26 2007 Simon MacMullen <simon@lshift.net> 1.2.0-1
- New upstream release
* Wed Aug 29 2007 Simon MacMullen <simon@lshift.net> 1.1.1-1
- New upstream release
* Mon Jul 30 2007 Simon MacMullen <simon@lshift.net> 1.1.0-1.alpha
- New upstream release
* Tue Jun 12 2007 Hubert Plociniczak <hubert@lshift.net> 1.0.0-1.20070607
- Building from source tarball, added starting script, stopping
* Mon May 21 2007 Hubert Plociniczak <hubert@lshift.net> 1.0.0-1.alpha
- Initial build of server library of RabbitMQ package

View File

@ -0,0 +1 @@
D /var/run/rabbitmq 0755 rabbitmq rabbitmq -

View File

@ -0,0 +1,41 @@
#!/usr/bin/env python2
import os.path
import rpm
import sys
if len(sys.argv) != 3:
print('Syntax: %s <version a> <version b>' % (os.path.basename(sys.argv[0])))
sys.exit(64)
a = sys.argv[1]
b = sys.argv[2]
def parse_rpm_version(v):
splitted = v.split(':', 1)
try:
epoch = splitted[0]
v = splitted[1]
except IndexError:
epoch = '0'
splitted = v.split('-', 1)
version = splitted[0]
try:
release = splitted[1]
except IndexError:
release = ''
return (epoch, version, release)
a_parsed = parse_rpm_version(a)
b_parsed = parse_rpm_version(b)
vc = rpm.labelCompare(a_parsed, b_parsed)
if vc > 0:
print('%s < %s' % (b, a))
elif vc == 0:
print('%s = %s' % (a, b))
elif vc < 0:
print('%s < %s' % (a, b))

View File

@ -0,0 +1,8 @@
#!/bin/sh
# vim:sw=2:et:
set -e
VERSION=$1
echo "$VERSION" | sed -E -e 's/-/~/g'

View File

@ -0,0 +1,14 @@
#!/bin/sh
set -e
awk '
/^%changelog/ {
in_changelog = 1;
next;
}
{
if (in_changelog) {
print;
}
}' "$@"

View File

@ -0,0 +1,56 @@
#!/bin/sh
# vim:sw=2:et:
set -e
case $# in
1)
SPEC=$(dirname "$0")/../rabbitmq-server.spec
PACKAGE_VERSION=$1
;;
2)
SPEC=$1
PACKAGE_VERSION=$2
;;
esac
SCRIPT=$(basename "$0")
SCRIPTS_DIR=$(dirname "$0")
if test -z "$SPEC" -o ! -f "$SPEC" -o -z "$PACKAGE_VERSION"; then
echo "Syntax: $SCRIPT [<spec file>] <rpm version>" 1>&2
exit 64
fi
if "$SCRIPTS_DIR/parse-changelog.sh" "$SPEC" | \
grep -E -q "^\*.+ ${PACKAGE_VERSION}-[^ ]+$"; then
exit 0
fi
CHANGELOG_PKG_REV=1
CHANGELOG_EMAIL='info@rabbitmq.com'
CHANGELOG_COMMENT='New upstream release.'
awk "
/^Release:/ {
if (!release_modified) {
release = \$0;
sub(/[0-9]+/, \"${CHANGELOG_PKG_REV}\", release);
print release;
release_modified = 1;
next;
}
}
/^%changelog/ {
print;
print \"* $(date +'%a %b %-d %Y') ${CHANGELOG_EMAIL} ${PACKAGE_VERSION}-${CHANGELOG_PKG_REV}\";
print \"- ${CHANGELOG_COMMENT}\";
print \"\";
next;
}
{
print;
}
" < "$SPEC" > "$SPEC.updated"
mv "$SPEC.updated" "$SPEC"

3
packaging/debs/Debian/.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
/debian/postrm
/debian/stamp-makefile-build
/rabbitmq-server_*

View File

@ -0,0 +1,128 @@
SOURCE_DIST_FILE ?= $(wildcard ../../../rabbitmq-server-*.tar.xz)
ifneq ($(filter-out clean,$(MAKECMDGOALS)),)
ifeq ($(SOURCE_DIST_FILE),)
$(error Cannot find source archive; please specify SOURCE_DIST_FILE)
endif
ifneq ($(words $(SOURCE_DIST_FILE)),1)
$(error Multiple source archives found; please specify SOURCE_DIST_FILE)
endif
endif
VERSION ?= $(patsubst rabbitmq-server-%.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
ifeq ($(VERSION),)
$(error Cannot determine version; please specify VERSION)
endif
# $(DEBIAN_VERSION) doesn't include the package revision: this one is
# only set in debian/changelog.
DEBIAN_VERSION = $(subst -,~,$(VERSION))
DEBIAN_ORIG_TARBALL = rabbitmq-server_$(DEBIAN_VERSION).orig.tar.xz
UNPACKED_DIR = $(patsubst %.tar.xz,%,$(notdir $(SOURCE_DIST_FILE)))
DEB_HOST_ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH)
CHANGES_FILE = rabbitmq-server_$(DEBIAN_VERSION)-*_$(DEB_HOST_ARCH).changes
# Package signing.
#
# At least the key ID is mandatory ($(SIGNING_KEY)). If it's set, we
# enable signing in dpkg-build-package(1), otherwise we ask for an
# unsigned package.
#
# To maintain backward compatibility, the caller can also specify
# $(KEYSDIR) or $(GNUPG_PATH) and we set GNUPGHOME accordingly.
ifneq ($(SIGNING_KEY),)
SIGNING_FLAG = -k$(SIGNING_KEY)
ifneq ($(KEYSDIR),)
GNUPGHOME = $(KEYSDIR)/keyring/.gnupg
export GNUPGHOME
endif
ifneq ($(GNUPG_PATH),)
GNUPGHOME = $(GNUPG_PATH)/.gnupg
export GNUPGHOME
endif
else
SIGNING_FLAG = -us -uc
endif
unexport DEPS_DIR
unexport ERL_LIBS
MAKEOVERRIDES =
.PHONY: all package clean
all: package
@:
package: clean
# If a signing key ID was specified, verify that the key is available
# before starting a possibly long build. At the same time, display some
# useful informations on the key so the caller can double-check if he
# wants.
ifneq ($(SIGNING_KEY),)
@echo
@echo '--------------------------------------------------'
@echo "The package will be signed with key $(SIGNING_KEY):"
@gpg -K "$(SIGNING_KEY)"
@echo '--------------------------------------------------'
@echo
endif
# Because we are creating a source package as well, Debian expects the
# source archive to have a specially formatted name. Copy the original
# archive to a correctly named file.
cp -a "$(SOURCE_DIST_FILE)" "$(DEBIAN_ORIG_TARBALL)"
# Prepare the source directory: we extract the source archive and copy
# the debian/ subdirectory.
xzcat "$(DEBIAN_ORIG_TARBALL)" | tar -xf -
cp -a debian "$(UNPACKED_DIR)/debian"
ifeq ($(INSTALL_BUILD_DEPS),yes)
# Install build dependencies. To help us, we use mk-build-deps(1) from
# the devscripts package.
#
# We ignore errors from the first `dpkg -i` because the command will
# fail: dependencies are missing and dpkg(8) doesn't install them.
# That's why we have `apt-get install -f` following. To double-check
# everything went fine, we have the second `dpkg -i`.
apt-get install -y --no-install-recommends devscripts equivs
mk-build-deps debian/control
-dpkg -i ./rabbitmq-server-build-deps_*_all.deb
apt-get install -y -f -V --no-install-recommends
dpkg -i ./rabbitmq-server-build-deps_*_all.deb
endif
# Log Erlang version.
@echo
@echo '--------------------------------------------------'
@echo "Erlang and Elixir versions used to compile:"
@elixir --version
@echo '--------------------------------------------------'
@echo
# Possibly update debian/changelog (in the created source directory):
# - if it contains an entry for the specified version, do nothing;
# - otherwise, prepend a generated entry using "1" as the package
# revision.
cd "$(UNPACKED_DIR)"; \
../scripts/update-changelog.sh "$(DEBIAN_VERSION)"
# Finally build the package! We ask for both the source package and one
# or more binary packages.
cd "$(UNPACKED_DIR)"; \
dpkg-buildpackage -sa $(SIGNING_FLAG)
# Before we remove the source directory, copy the possibly updated
# debian/changelog to the original debian subdirectory, if the caller
# asks for it. He is then responsible for committing it.
ifeq ($(SAVE_CHANGELOG),yes)
cp -a "$(UNPACKED_DIR)/debian/changelog" debian/changelog
endif
rm -rf "$(UNPACKED_DIR)"
# If $(PACKAGES_DIR) is specified, move all package files to that
# location.
ifneq ($(PACKAGES_DIR),)
mkdir -p "$(PACKAGES_DIR)"
mv $$(./scripts/get-debian-package-files-list.sh $(CHANGES_FILE)) \
"$(PACKAGES_DIR)"
endif
clean:
rm -rf $(UNPACKED_DIR)
rm -f $(DEBIAN_ORIG_TARBALL)
./scripts/get-debian-package-files-list.sh $(CHANGES_FILE) | xargs rm -f

View File

@ -0,0 +1,547 @@
rabbitmq-server (3.8.0~rc.1-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Sun, 08 Sep 2019 20:26:33 +0000
rabbitmq-server (3.8.0~beta.7-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Tue, 20 Aug 2019 19:44:41 +0000
rabbitmq-server (3.8.0~beta.6-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Sun, 04 Aug 2019 00:18:13 +0000
rabbitmq-server (3.8.0~beta.5-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Tue, 09 Jul 2019 16:11:20 +0000
rabbitmq-server (3.8.0~beta.4-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Fri, 10 May 2019 14:13:38 +0000
rabbitmq-server (3.8.0~beta.3-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Wed, 06 Mar 2019 05:08:03 +0000
rabbitmq-server (3.8.0~beta.2-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Thu, 31 Jan 2019 10:16:50 +0000
rabbitmq-server (3.8.0~beta.1-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Thu, 08 Nov 2018 14:41:04 +0000
rabbitmq-server (3.7.1~beta.1-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Wed, 13 Dec 2017 18:07:55 +0000
rabbitmq-server (3.7.0-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Wed, 29 Nov 2017 16:52:39 +0000
rabbitmq-server (3.7.0~rc.2-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Thu, 16 Nov 2017 17:50:24 +0000
rabbitmq-server (3.7.0~rc.1-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Mon, 18 Sep 2017 14:43:34 +0000
rabbitmq-server (3.7.0~beta.20-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> Tue, 12 Sep 2017 07:49:21 +0000
rabbitmq-server (3.6.12-1) unstable; urgency=medium
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Mon, 11 Sep 2017 16:19:10 +0100
rabbitmq-server (3.6.11-1) unstable; urgency=medium
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Wed, 16 Aug 2017 13:06:42 +0100
rabbitmq-server (3.6.10-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Thu, 25 May 2017 11:46:23 +0100
rabbitmq-server (3.6.9-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Wed, 29 Mar 2017 10:13:44 +0100
rabbitmq-server (3.6.8-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Fri, 17 Mar 2017 12:04:45 +0000
rabbitmq-server (3.6.7-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Wed, 15 Mar 2017 09:11:30 +0000
rabbitmq-server (3.6.6-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Mon, 21 Nov 2016 10:36:28 +0000
rabbitmq-server (3.6.5-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Fri, 05 Aug 2016 14:20:47 +0100
rabbitmq-server (3.6.4-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Fri, 29 Jul 2016 11:40:53 +0100
rabbitmq-server (3.6.3-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Wed, 06 Jul 2016 19:19:21 +0100
rabbitmq-server (3.6.2-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Thu, 19 May 2016 09:20:06 +0100
rabbitmq-server (3.6.1-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Tue, 01 Mar 2016 13:19:57 +0000
rabbitmq-server (3.6.0-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Tue, 22 Dec 2015 13:21:56 +0000
rabbitmq-server (3.5.7-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Tue, 15 Dec 2015 10:10:46 +0000
rabbitmq-server (3.5.6-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Wed, 07 Oct 2015 13:31:24 +0100
rabbitmq-server (3.5.5-3) unstable; urgency=low
* Fix bashism in rabbitmq-script-wrapper
-- Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> Thu, 24 Sep 2015 19:18:17 +0100
rabbitmq-server (3.5.5-1) unstable; urgency=low
* New Upstream Release
-- Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> Thu, 24 Sep 2015 10:57:25 +0100
rabbitmq-server (3.5.4-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Tue, 21 Jul 2015 20:25:48 +0100
rabbitmq-server (3.5.3-1) unstable; urgency=low
* New Upstream Release
-- Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> Fri, 22 May 2015 11:04:17 +0100
rabbitmq-server (3.5.2-1) unstable; urgency=low
* New Upstream Release
-- Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> Tue, 12 May 2015 16:21:44 +0100
rabbitmq-server (3.5.1-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Thu, 02 Apr 2015 10:17:30 +0100
rabbitmq-server (3.5.0-1) unstable; urgency=low
* New Upstream Release
-- Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> Wed, 11 Mar 2015 13:56:19 +0000
rabbitmq-server (3.4.4-1) unstable; urgency=low
* New Upstream Release
-- Michael Klishin <michael@rabbitmq.com> Wed, 11 Feb 2015 12:05:01 +0000
rabbitmq-server (3.4.3-1) unstable; urgency=low
* New Upstream Release
-- Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com> Tue, 06 Jan 2015 15:58:45 +0000
rabbitmq-server (3.4.2-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Wed, 26 Nov 2014 12:11:12 +0000
rabbitmq-server (3.4.1-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Wed, 29 Oct 2014 13:31:10 +0000
rabbitmq-server (3.4.0-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Tue, 21 Oct 2014 14:21:36 +0100
rabbitmq-server (3.3.5-1) unstable; urgency=low
* New Upstream Release
* Changed Uploaders from Emile Joubert to Blair Hester
-- Simon MacMullen <simon@rabbitmq.com> Mon, 11 Aug 2014 12:23:31 +0100
rabbitmq-server (3.3.4-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Tue, 24 Jun 2014 12:50:29 +0100
rabbitmq-server (3.3.3-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Mon, 16 Jun 2014 13:00:00 +0100
rabbitmq-server (3.3.2-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Mon, 09 Jun 2014 10:25:22 +0100
rabbitmq-server (3.3.1-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Tue, 29 Apr 2014 11:49:23 +0100
rabbitmq-server (3.3.0-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Wed, 02 Apr 2014 14:23:14 +0100
rabbitmq-server (3.2.4-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Mon, 03 Mar 2014 14:50:18 +0000
rabbitmq-server (3.2.3-1) unstable; urgency=low
* New Upstream Release
-- Emile Joubert <emile@rabbitmq.com> Thu, 23 Jan 2014 14:46:37 +0000
rabbitmq-server (3.2.2-1) unstable; urgency=low
* New Upstream Release
-- Emile Joubert <emile@rabbitmq.com> Tue, 10 Dec 2013 16:08:08 +0000
rabbitmq-server (3.2.0-1) unstable; urgency=low
* New Upstream Release
-- Emile Joubert <emile@rabbitmq.com> Wed, 23 Oct 2013 12:44:10 +0100
rabbitmq-server (3.1.5-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Thu, 15 Aug 2013 11:03:13 +0100
rabbitmq-server (3.1.3-1) unstable; urgency=low
* New Upstream Release
-- Tim Watson <tim@rabbitmq.com> Tue, 25 Jun 2013 15:01:12 +0100
rabbitmq-server (3.1.2-1) unstable; urgency=low
* New Upstream Release
-- Tim Watson <tim@rabbitmq.com> Mon, 24 Jun 2013 11:16:41 +0100
rabbitmq-server (3.1.1-1) unstable; urgency=low
* Test release
-- Tim Watson <tim@rabbitmq.com> Mon, 20 May 2013 16:21:20 +0100
rabbitmq-server (3.1.0-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Wed, 01 May 2013 11:57:58 +0100
rabbitmq-server (3.0.1-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Tue, 11 Dec 2012 11:29:55 +0000
rabbitmq-server (3.0.0-1) unstable; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Fri, 16 Nov 2012 14:15:29 +0000
rabbitmq-server (2.7.1-1) natty; urgency=low
* New Upstream Release
-- Steve Powell <steve@rabbitmq.com> Fri, 16 Dec 2011 12:12:36 +0000
rabbitmq-server (2.7.0-1) natty; urgency=low
* New Upstream Release
-- Steve Powell <steve@rabbitmq.com> Tue, 08 Nov 2011 16:47:50 +0000
rabbitmq-server (2.6.1-1) natty; urgency=low
* New Upstream Release
-- Tim <tim@rabbitmq.com> Fri, 09 Sep 2011 14:38:45 +0100
rabbitmq-server (2.6.0-1) natty; urgency=low
* New Upstream Release
-- Tim <tim@rabbitmq.com> Fri, 26 Aug 2011 16:29:40 +0100
rabbitmq-server (2.5.1-1) lucid; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Mon, 27 Jun 2011 11:21:49 +0100
rabbitmq-server (2.5.0-1) lucid; urgency=low
* New Upstream Release
-- <jerryk@vmware.com> Thu, 09 Jun 2011 07:20:29 -0700
rabbitmq-server (2.4.1-1) lucid; urgency=low
* New Upstream Release
-- Alexandru Scvortov <alexandru@rabbitmq.com> Thu, 07 Apr 2011 16:49:22 +0100
rabbitmq-server (2.4.0-1) lucid; urgency=low
* New Upstream Release
-- Alexandru Scvortov <alexandru@rabbitmq.com> Tue, 22 Mar 2011 17:34:31 +0000
rabbitmq-server (2.3.1-1) lucid; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Thu, 03 Feb 2011 12:43:56 +0000
rabbitmq-server (2.3.0-1) lucid; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@rabbitmq.com> Tue, 01 Feb 2011 12:52:16 +0000
rabbitmq-server (2.2.0-1) lucid; urgency=low
* New Upstream Release
-- Rob Harrop <rob@rabbitmq.com> Mon, 29 Nov 2010 12:24:48 +0000
rabbitmq-server (2.1.1-1) lucid; urgency=low
* New Upstream Release
-- Vlad Alexandru Ionescu <vlad@rabbitmq.com> Tue, 19 Oct 2010 17:20:10 +0100
rabbitmq-server (2.1.0-1) lucid; urgency=low
* New Upstream Release
-- Marek Majkowski <marek@rabbitmq.com> Tue, 14 Sep 2010 14:20:17 +0100
rabbitmq-server (2.0.0-1) karmic; urgency=low
* New Upstream Release
-- Michael Bridgen <mikeb@rabbitmq.com> Mon, 23 Aug 2010 14:55:39 +0100
rabbitmq-server (1.8.1-1) lucid; urgency=low
* New Upstream Release
-- Emile Joubert <emile@rabbitmq.com> Wed, 14 Jul 2010 15:05:24 +0100
rabbitmq-server (1.8.0-1) intrepid; urgency=low
* New Upstream Release
-- Matthew Sackman <matthew@rabbitmq.com> Tue, 15 Jun 2010 12:48:48 +0100
rabbitmq-server (1.7.2-1) intrepid; urgency=low
* New Upstream Release
-- Matthew Sackman <matthew@lshift.net> Mon, 15 Feb 2010 15:54:47 +0000
rabbitmq-server (1.7.1-1) intrepid; urgency=low
* New Upstream Release
-- Matthew Sackman <matthew@lshift.net> Fri, 22 Jan 2010 14:14:29 +0000
rabbitmq-server (1.7.0-1) intrepid; urgency=low
* New Upstream Release
-- David Wragg <dpw@lshift.net> Mon, 05 Oct 2009 13:44:41 +0100
rabbitmq-server (1.6.0-1) hardy; urgency=low
* New Upstream Release
-- Matthias Radestock <matthias@lshift.net> Tue, 16 Jun 2009 15:02:58 +0100
rabbitmq-server (1.5.5-1) hardy; urgency=low
* New Upstream Release
-- Matthias Radestock <matthias@lshift.net> Tue, 19 May 2009 09:57:54 +0100
rabbitmq-server (1.5.4-1) hardy; urgency=low
* New Upstream Release
-- Matthias Radestock <matthias@lshift.net> Mon, 06 Apr 2009 09:19:32 +0100
rabbitmq-server (1.5.3-1) hardy; urgency=low
* New Upstream Release
-- Tony Garnock-Jones <tonyg@lshift.net> Tue, 24 Feb 2009 18:23:33 +0000
rabbitmq-server (1.5.2-1) hardy; urgency=low
* New Upstream Release
-- Tony Garnock-Jones <tonyg@lshift.net> Mon, 23 Feb 2009 16:03:38 +0000
rabbitmq-server (1.5.1-1) hardy; urgency=low
* New Upstream Release
-- Simon MacMullen <simon@lshift.net> Mon, 19 Jan 2009 15:46:13 +0000
rabbitmq-server (1.5.0-1) testing; urgency=low
* New Upstream Release
-- Matthias Radestock <matthias@lshift.net> Wed, 17 Dec 2008 18:23:47 +0000
rabbitmq-server (1.4.0-1) testing; urgency=low
* New Upstream Release
-- Tony Garnock-Jones <tonyg@lshift.net> Thu, 24 Jul 2008 13:21:48 +0100
rabbitmq-server (1.3.0-1) testing; urgency=low
* New Upstream Release
-- Adrien Pierard <adrien@lshift.net> Mon, 03 Mar 2008 15:34:38 +0000
rabbitmq-server (1.2.0-2) testing; urgency=low
* Fixed rabbitmqctl wrapper script
-- Simon MacMullen <simon@lshift.net> Fri, 05 Oct 2007 11:55:00 +0100
rabbitmq-server (1.2.0-1) testing; urgency=low
* New upstream release
-- Simon MacMullen <simon@lshift.net> Wed, 26 Sep 2007 11:49:26 +0100
rabbitmq-server (1.1.1-1) testing; urgency=low
* New upstream release
-- Simon MacMullen <simon@lshift.net> Wed, 29 Aug 2007 12:03:15 +0100
rabbitmq-server (1.1.0-alpha-2) testing; urgency=low
* Fixed erlang-nox dependency
-- Simon MacMullen <simon@lshift.net> Thu, 02 Aug 2007 11:27:13 +0100
rabbitmq-server (1.1.0-alpha-1) testing; urgency=low
* New upstream release
-- Simon MacMullen <simon@lshift.net> Fri, 20 Jul 2007 18:17:33 +0100
rabbitmq-server (1.0.0-alpha-1) unstable; urgency=low
* Initial release
-- Tony Garnock-Jones <tonyg@shortstop.lshift.net> Wed, 31 Jan 2007 19:06:33 +0000

View File

@ -0,0 +1 @@
9

View File

@ -0,0 +1,89 @@
Source: rabbitmq-server
Section: net
Priority: extra
Maintainer: RabbitMQ Team <info@rabbitmq.com>
Uploaders: Michael Klishin <michael@rabbitmq.com>,
Karl Nilsson <knilsson@rabbitmq.com>,
Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com>
Build-Depends: debhelper (>= 9),
dh-systemd (>= 1.5),
erlang-base (>= 1:22.3) | erlang-base-hipe (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-base (<< 1:24.0) | erlang-base-hipe (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-crypto (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-crypto (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-edoc (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-edoc (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-eldap (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-eldap (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-erl-docgen (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-erl-docgen (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-eunit (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-eunit (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-inets (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-inets (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-mnesia (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-mnesia (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-os-mon (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-os-mon (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-parsetools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-parsetools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-public-key (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-public-key (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-runtime-tools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-runtime-tools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-ssl (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-ssl (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-syntax-tools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-syntax-tools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-tools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-tools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-xmerl (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-xmerl (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-dev (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-dev (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-src (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-src (<< 1:24.0) | esl-erlang (<< 1:24.0),
elixir (>= 1.10.4),
zip,
rsync
Standards-Version: 3.9.6
Package: rabbitmq-server
Architecture: all
# FIXME: We remove ${misc:Depends} and hard-code the dependency on
# init-system-helpers. we need this because we build the package on
# Debian, where dh-systemd/init-system-helpers is at version 1.18, but
# Ubuntu 14.04 only has init-system-helpers 1.14.
Depends: init-system-helpers (>= 1.13~),
erlang-base (>= 1:22.3) | erlang-base-hipe (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-base (<< 1:24.0) | erlang-base-hipe (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-crypto (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-crypto (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-eldap (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-eldap (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-inets (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-inets (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-mnesia (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-mnesia (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-os-mon (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-os-mon (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-parsetools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-parsetools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-public-key (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-public-key (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-runtime-tools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-runtime-tools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-ssl (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-ssl (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-syntax-tools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-syntax-tools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-tools (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-tools (<< 1:24.0) | esl-erlang (<< 1:24.0),
erlang-xmerl (>= 1:22.3) | esl-erlang (>= 1:22.3),
erlang-xmerl (<< 1:24.0) | esl-erlang (<< 1:24.0),
adduser,
logrotate,
socat
Description: Multi-protocol messaging broker
RabbitMQ is an open source multi-protocol messaging broker.
Homepage: https://www.rabbitmq.com/

View File

@ -0,0 +1,405 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: rabbitmq-server
Upstream-Contact: Jean-Sébastien Pédron <jean-sebastien@rabbitmq.com>
Source: https://github.com/rabbitmq/rabbitmq-server
Files: *
Copyright: 2007-2020 VMware, Inc. or its affiliates.
License: MPL-2.0
Files: deps/rabbit_common/src/rabbit_numerical.erl deps/rabbit_common/src/rabbit_http_util.erl
Copyright: 2007 Mochi Media, Inc.
License: MIT
License: MPL-2.0
Mozilla Public License Version 2.0
==================================
1. Definitions
--------------
1.1. "Contributor"
means each individual or legal entity that creates, contributes to
the creation of, or owns Covered Software.
1.2. "Contributor Version"
means the combination of the Contributions of others (if any) used
by a Contributor and that particular Contributor's Contribution.
1.3. "Contribution"
means Covered Software of a particular Contributor.
1.4. "Covered Software"
means Source Code Form to which the initial Contributor has attached
the notice in Exhibit A, the Executable Form of such Source Code
Form, and Modifications of such Source Code Form, in each case
including portions thereof.
1.5. "Incompatible With Secondary Licenses"
means
(a) that the initial Contributor has attached the notice described
in Exhibit B to the Covered Software; or
(b) that the Covered Software was made available under the terms of
version 1.1 or earlier of the License, but not also under the
terms of a Secondary License.
1.6. "Executable Form"
means any form of the work other than Source Code Form.
1.7. "Larger Work"
means a work that combines Covered Software with other material, in
a separate file or files, that is not Covered Software.
1.8. "License"
means this document.
1.9. "Licensable"
means having the right to grant, to the maximum extent possible,
whether at the time of the initial grant or subsequently, any and
all of the rights conveyed by this License.
1.10. "Modifications"
means any of the following:
(a) any file in Source Code Form that results from an addition to,
deletion from, or modification of the contents of Covered
Software; or
(b) any new file in Source Code Form that contains any Covered
Software.
1.11. "Patent Claims" of a Contributor
means any patent claim(s), including without limitation, method,
process, and apparatus claims, in any patent Licensable by such
Contributor that would be infringed, but for the grant of the
License, by the making, using, selling, offering for sale, having
made, import, or transfer of either its Contributions or its
Contributor Version.
1.12. "Secondary License"
means either the GNU General Public License, Version 2.0, the GNU
Lesser General Public License, Version 2.1, the GNU Affero General
Public License, Version 3.0, or any later versions of those
licenses.
1.13. "Source Code Form"
means the form of the work preferred for making modifications.
1.14. "You" (or "Your")
means an individual or a legal entity exercising rights under this
License. For legal entities, "You" includes any entity that
controls, is controlled by, or is under common control with You. For
purposes of this definition, "control" means (a) the power, direct
or indirect, to cause the direction or management of such entity,
whether by contract or otherwise, or (b) ownership of more than
fifty percent (50%) of the outstanding shares or beneficial
ownership of such entity.
2. License Grants and Conditions
--------------------------------
2.1. Grants
Each Contributor hereby grants You a world-wide, royalty-free,
non-exclusive license:
(a) under intellectual property rights (other than patent or trademark)
Licensable by such Contributor to use, reproduce, make available,
modify, display, perform, distribute, and otherwise exploit its
Contributions, either on an unmodified basis, with Modifications, or
as part of a Larger Work; and
(b) under Patent Claims of such Contributor to make, use, sell, offer
for sale, have made, import, and otherwise transfer either its
Contributions or its Contributor Version.
2.2. Effective Date
The licenses granted in Section 2.1 with respect to any Contribution
become effective for each Contribution on the date the Contributor first
distributes such Contribution.
2.3. Limitations on Grant Scope
The licenses granted in this Section 2 are the only rights granted under
this License. No additional rights or licenses will be implied from the
distribution or licensing of Covered Software under this License.
Notwithstanding Section 2.1(b) above, no patent license is granted by a
Contributor:
(a) for any code that a Contributor has removed from Covered Software;
or
(b) for infringements caused by: (i) Your and any other third party's
modifications of Covered Software, or (ii) the combination of its
Contributions with other software (except as part of its Contributor
Version); or
(c) under Patent Claims infringed by Covered Software in the absence of
its Contributions.
This License does not grant any rights in the trademarks, service marks,
or logos of any Contributor (except as may be necessary to comply with
the notice requirements in Section 3.4).
2.4. Subsequent Licenses
No Contributor makes additional grants as a result of Your choice to
distribute the Covered Software under a subsequent version of this
License (see Section 10.2) or under the terms of a Secondary License (if
permitted under the terms of Section 3.3).
2.5. Representation
Each Contributor represents that the Contributor believes its
Contributions are its original creation(s) or it has sufficient rights
to grant the rights to its Contributions conveyed by this License.
2.6. Fair Use
This License is not intended to limit any rights You have under
applicable copyright doctrines of fair use, fair dealing, or other
equivalents.
2.7. Conditions
Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted
in Section 2.1.
3. Responsibilities
-------------------
3.1. Distribution of Source Form
All distribution of Covered Software in Source Code Form, including any
Modifications that You create or to which You contribute, must be under
the terms of this License. You must inform recipients that the Source
Code Form of the Covered Software is governed by the terms of this
License, and how they can obtain a copy of this License. You may not
attempt to alter or restrict the recipients' rights in the Source Code
Form.
3.2. Distribution of Executable Form
If You distribute Covered Software in Executable Form then:
(a) such Covered Software must also be made available in Source Code
Form, as described in Section 3.1, and You must inform recipients of
the Executable Form how they can obtain a copy of such Source Code
Form by reasonable means in a timely manner, at a charge no more
than the cost of distribution to the recipient; and
(b) You may distribute such Executable Form under the terms of this
License, or sublicense it under different terms, provided that the
license for the Executable Form does not attempt to limit or alter
the recipients' rights in the Source Code Form under this License.
3.3. Distribution of a Larger Work
You may create and distribute a Larger Work under terms of Your choice,
provided that You also comply with the requirements of this License for
the Covered Software. If the Larger Work is a combination of Covered
Software with a work governed by one or more Secondary Licenses, and the
Covered Software is not Incompatible With Secondary Licenses, this
License permits You to additionally distribute such Covered Software
under the terms of such Secondary License(s), so that the recipient of
the Larger Work may, at their option, further distribute the Covered
Software under the terms of either this License or such Secondary
License(s).
3.4. Notices
You may not remove or alter the substance of any license notices
(including copyright notices, patent notices, disclaimers of warranty,
or limitations of liability) contained within the Source Code Form of
the Covered Software, except that You may alter any license notices to
the extent required to remedy known factual inaccuracies.
3.5. Application of Additional Terms
You may choose to offer, and to charge a fee for, warranty, support,
indemnity or liability obligations to one or more recipients of Covered
Software. However, You may do so only on Your own behalf, and not on
behalf of any Contributor. You must make it absolutely clear that any
such warranty, support, indemnity, or liability obligation is offered by
You alone, and You hereby agree to indemnify every Contributor for any
liability incurred by such Contributor as a result of warranty, support,
indemnity or liability terms You offer. You may include additional
disclaimers of warranty and limitations of liability specific to any
jurisdiction.
4. Inability to Comply Due to Statute or Regulation
---------------------------------------------------
If it is impossible for You to comply with any of the terms of this
License with respect to some or all of the Covered Software due to
statute, judicial order, or regulation then You must: (a) comply with
the terms of this License to the maximum extent possible; and (b)
describe the limitations and the code they affect. Such description must
be placed in a text file included with all distributions of the Covered
Software under this License. Except to the extent prohibited by statute
or regulation, such description must be sufficiently detailed for a
recipient of ordinary skill to be able to understand it.
5. Termination
--------------
5.1. The rights granted under this License will terminate automatically
if You fail to comply with any of its terms. However, if You become
compliant, then the rights granted under this License from a particular
Contributor are reinstated (a) provisionally, unless and until such
Contributor explicitly and finally terminates Your grants, and (b) on an
ongoing basis, if such Contributor fails to notify You of the
non-compliance by some reasonable means prior to 60 days after You have
come back into compliance. Moreover, Your grants from a particular
Contributor are reinstated on an ongoing basis if such Contributor
notifies You of the non-compliance by some reasonable means, this is the
first time You have received notice of non-compliance with this License
from such Contributor, and You become compliant prior to 30 days after
Your receipt of the notice.
5.2. If You initiate litigation against any entity by asserting a patent
infringement claim (excluding declaratory judgment actions,
counter-claims, and cross-claims) alleging that a Contributor Version
directly or indirectly infringes any patent, then the rights granted to
You by any and all Contributors for the Covered Software under Section
2.1 of this License shall terminate.
5.3. In the event of termination under Sections 5.1 or 5.2 above, all
end user license agreements (excluding distributors and resellers) which
have been validly granted by You or Your distributors under this License
prior to termination shall survive termination.
************************************************************************
* *
* 6. Disclaimer of Warranty *
* ------------------------- *
* *
* Covered Software is provided under this License on an "as is" *
* basis, without warranty of any kind, either expressed, implied, or *
* statutory, including, without limitation, warranties that the *
* Covered Software is free of defects, merchantable, fit for a *
* particular purpose or non-infringing. The entire risk as to the *
* quality and performance of the Covered Software is with You. *
* Should any Covered Software prove defective in any respect, You *
* (not any Contributor) assume the cost of any necessary servicing, *
* repair, or correction. This disclaimer of warranty constitutes an *
* essential part of this License. No use of any Covered Software is *
* authorized under this License except under this disclaimer. *
* *
************************************************************************
************************************************************************
* *
* 7. Limitation of Liability *
* -------------------------- *
* *
* Under no circumstances and under no legal theory, whether tort *
* (including negligence), contract, or otherwise, shall any *
* Contributor, or anyone who distributes Covered Software as *
* permitted above, be liable to You for any direct, indirect, *
* special, incidental, or consequential damages of any character *
* including, without limitation, damages for lost profits, loss of *
* goodwill, work stoppage, computer failure or malfunction, or any *
* and all other commercial damages or losses, even if such party *
* shall have been informed of the possibility of such damages. This *
* limitation of liability shall not apply to liability for death or *
* personal injury resulting from such party's negligence to the *
* extent applicable law prohibits such limitation. Some *
* jurisdictions do not allow the exclusion or limitation of *
* incidental or consequential damages, so this exclusion and *
* limitation may not apply to You. *
* *
************************************************************************
8. Litigation
-------------
Any litigation relating to this License may be brought only in the
courts of a jurisdiction where the defendant maintains its principal
place of business and such litigation shall be governed by laws of that
jurisdiction, without reference to its conflict-of-law provisions.
Nothing in this Section shall prevent a party's ability to bring
cross-claims or counter-claims.
9. Miscellaneous
----------------
This License represents the complete agreement concerning the subject
matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the extent
necessary to make it enforceable. Any law or regulation which provides
that the language of a contract shall be construed against the drafter
shall not be used to construe this License against a Contributor.
10. Versions of the License
---------------------------
10.1. New Versions
Mozilla Foundation is the license steward. Except as provided in Section
10.3, no one other than the license steward has the right to modify or
publish new versions of this License. Each version will be given a
distinguishing version number.
10.2. Effect of New Versions
You may distribute the Covered Software under the terms of the version
of the License under which You originally received the Covered Software,
or under the terms of any subsequent version published by the license
steward.
10.3. Modified Versions
If you create software not governed by this License, and you want to
create a new license for such software, you may create and use a
modified version of this License if you rename the license and remove
any references to the name of the license steward (except to note that
such modified license differs from this License).
10.4. Distributing Source Code Form that is Incompatible With Secondary
Licenses
If You choose to distribute Source Code Form that is Incompatible With
Secondary Licenses under the terms of this version of the License, the
notice described in Exhibit B of this License must be attached.
Exhibit A - Source Code Form License Notice
-------------------------------------------
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
If it is not possible or desirable to put the notice in a particular
file, then You may include the notice in a location (such as a LICENSE
file in a relevant directory) where a recipient would be likely to look
for such a notice.
Copyright (c) 2007-2020 VMware, Inc. or its affiliates.
License: MIT
This is the MIT license
.
Copyright (c) 2007 Mochi Media, Inc
.
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions
:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -0,0 +1,9 @@
usr/lib/rabbitmq/bin
usr/lib/erlang/lib
usr/sbin
usr/share/man
var/lib/rabbitmq/mnesia
var/log/rabbitmq
etc/logrotate.d
etc/profile.d
etc/rabbitmq

View File

@ -0,0 +1,79 @@
#!/bin/sh
# postinst script for rabbitmq
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package
# create rabbitmq group
if ! getent group rabbitmq >/dev/null; then
addgroup --system rabbitmq
fi
# create rabbitmq user
if ! getent passwd rabbitmq >/dev/null; then
adduser --system --ingroup rabbitmq --home /var/lib/rabbitmq \
--no-create-home --gecos "RabbitMQ messaging server" \
--disabled-login rabbitmq
fi
chown -R rabbitmq:rabbitmq /var/lib/rabbitmq
chown -R rabbitmq:adm /var/log/rabbitmq
chgrp rabbitmq /etc/rabbitmq
chmod g+s /etc/rabbitmq
chmod 750 /var/lib/rabbitmq/mnesia
chmod -R o-rwx,g-w /var/lib/rabbitmq/mnesia
case "$1" in
configure)
if test -z "$2"; then
# This is a fresh install of the package.
# On a fresh install, we want to limit permissions on the
# log directory to the owner and the group. Others won't
# have any access to log files: this is in case sensitive
# data are accidentally logged (like process crash data).
chmod 2750 /var/log/rabbitmq
else
# The package was already configured: it's an upgrade over
# a previously installed version, or it's an install over
# a non-purged version (i.e. deinstalled but configuration
# files and data are still there).
true
fi
if [ -n "$ZSH_VERSION" ]; then
echo "Z Shell detected.
to enable rabbitmqctl autocompletion add the following to your .zshrc file:
autoload _enable_rabbitmqctl_completion; _enable_rabbitmqctl_completion"
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@ -0,0 +1,75 @@
#!/bin/sh
# postrm script for rabbitmq
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see https://www.debian.org/doc/debian-policy/ or
# the debian-policy package
remove_plugin_traces() {
# Remove traces of plugins
rm -rf /var/lib/rabbitmq/plugins-scratch
}
remove_autocomplete_script() {
if [ -f /etc/profile.d/rabbitmqctl-autocomplete.sh ]; then
rm -rf /etc/profile.d/rabbitmqctl-autocomplete.sh
rm -rf /usr/share/zsh/vendor-functions/_enable_rabbitmqctl_completion
fi
}
case "$1" in
purge)
rm -f /etc/default/rabbitmq
if [ -d /var/lib/rabbitmq ]; then
rm -r /var/lib/rabbitmq
fi
if [ -d /var/log/rabbitmq ]; then
rm -r /var/log/rabbitmq
fi
if [ -d /etc/rabbitmq ]; then
rm -r /etc/rabbitmq
fi
remove_autocomplete_script
remove_plugin_traces
if getent passwd rabbitmq >/dev/null; then
# Stop epmd if run by the rabbitmq user
pkill -u rabbitmq epmd || :
fi
;;
remove)
remove_autocomplete_script
remove_plugin_traces
;;
upgrade)
remove_plugin_traces
;;
failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

View File

@ -0,0 +1,9 @@
# This file is sourced by /etc/init.d/rabbitmq-server. Its primary
# reason for existing is to allow adjustment of system limits for the
# rabbitmq-server process.
#
# Maximum number of open file handles. This will need to be increased
# to handle many simultaneous connections. Refer to the system
# documentation for ulimit (in man bash) for more information.
#
#ulimit -n 1024

View File

@ -0,0 +1 @@
deps/rabbit/docs/set_rabbitmq_policy.sh.example

View File

@ -0,0 +1,200 @@
#!/bin/sh
#
# rabbitmq-server RabbitMQ broker
#
# chkconfig: - 80 05
# description: Manages RabbitMQ server
#
### BEGIN INIT INFO
# Provides: rabbitmq-server
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: RabbitMQ broker
# Short-Description: Manages RabbitMQ server
### END INIT INFO
PATH=/sbin:/usr/sbin:/bin:/usr/bin
NAME=rabbitmq-server
DAEMON=/usr/sbin/${NAME}
CONTROL=/usr/sbin/rabbitmqctl
DESC="message broker"
USER=rabbitmq
PID_FILE=/var/run/rabbitmq/pid
RABBITMQ_STARTUP_TIMEOUT=600
test -x $DAEMON || exit 0
test -x $CONTROL || exit 0
RETVAL=0
set -e
[ -f /etc/default/${NAME} ] && . /etc/default/${NAME}
# $RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR is a directory where rabbitmq-server(8)
# console output (both stdout and sterr) is redirected. It defaults to
# /var/log/rabbitmq which is configured by the package already (i.e. the
# directory is created and its ownership is set).
#
# We still look at the value of $RABBITMQ_LOG_BASE, possibly set in
# /etc/default/rabbitmq-server for backward compatibility. But we use a
# specific variable name here (instead of $RABBITMQ_LOG_BASE) to avoid any
# confusion with RabbitMQ's own logging configuration. Indeed, the console
# output redirection is a responsibility of the package, not RabbitMQ itself.
: ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR:=${RABBITMQ_LOG_BASE:-/var/log/rabbitmq}}
. /lib/lsb/init-functions
. /lib/init/vars.sh
ensure_pid_dir () {
PID_DIR=`dirname ${PID_FILE}`
if [ ! -d ${PID_DIR} ] ; then
mkdir -p ${PID_DIR}
chown -R ${USER}:${USER} ${PID_DIR}
chmod 755 ${PID_DIR}
fi
}
remove_pid () {
rm -f ${PID_FILE}
rmdir `dirname ${PID_FILE}` || :
}
start_rabbitmq () {
status_rabbitmq quiet
if [ $RETVAL != 0 ] ; then
RETVAL=0
ensure_pid_dir
set +e
RABBITMQ_PID_FILE=$PID_FILE start-stop-daemon --quiet \
--chuid rabbitmq --start \
--pidfile "$PID_FILE" --background \
--startas /bin/sh -- -c "exec $DAEMON >'${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/startup_log' 2>'${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/startup_err'"
$CONTROL wait --timeout $RABBITMQ_STARTUP_TIMEOUT $PID_FILE >/dev/null 2>&1
RETVAL=$?
set -e
if [ $RETVAL != 0 ] ; then
remove_pid
fi
else
RETVAL=3
fi
}
stop_rabbitmq () {
status_rabbitmq quiet
if [ $RETVAL = 0 ] ; then
set +e
$CONTROL stop ${PID_FILE} \
> ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/shutdown_log \
2> ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/shutdown_err
RETVAL=$?
set -e
if [ $RETVAL = 0 ] ; then
remove_pid
fi
else
RETVAL=3
fi
}
status_rabbitmq() {
set +e
if [ "$1" != "quiet" ] ; then
$CONTROL status 2>&1
else
$CONTROL status > /dev/null 2>&1
fi
if [ $? != 0 ] ; then
RETVAL=3
fi
set -e
}
rotate_logs_rabbitmq() {
set +e
$CONTROL -q rotate_logs
if [ $? != 0 ] ; then
RETVAL=1
fi
set -e
}
restart_running_rabbitmq () {
status_rabbitmq quiet
if [ $RETVAL = 0 ] ; then
restart_rabbitmq
else
log_warning_msg "${DESC} not running"
fi
}
restart_rabbitmq() {
stop_rabbitmq
start_rabbitmq
}
restart_end() {
if [ $RETVAL = 0 ] ; then
log_end_msg 0
else
log_end_msg 1
fi
}
start_stop_end() {
case "$RETVAL" in
0)
[ -x /sbin/initctl ] && /sbin/initctl emit --no-wait "${NAME}-${1}"
log_end_msg 0
;;
3)
log_warning_msg "${DESC} already ${1}"
log_end_msg 0
RETVAL=0
;;
*)
log_warning_msg "FAILED - check ${RABBITMQ_SERVER_CONSOLE_OUTPUT_DIR}/startup_\{log, _err\}"
log_end_msg 1
;;
esac
}
case "$1" in
start)
log_daemon_msg "Starting ${DESC}" $NAME
start_rabbitmq
start_stop_end "running"
;;
stop)
log_daemon_msg "Stopping ${DESC}" $NAME
stop_rabbitmq
start_stop_end "stopped"
;;
status)
status_rabbitmq
;;
rotate-logs)
log_action_begin_msg "Rotating log files for ${DESC}: ${NAME}"
rotate_logs_rabbitmq
log_action_end_msg $RETVAL
;;
force-reload|reload|restart)
log_daemon_msg "Restarting ${DESC}" $NAME
restart_rabbitmq
restart_end
;;
try-restart)
log_daemon_msg "Restarting ${DESC}" $NAME
restart_running_rabbitmq
restart_end
;;
*)
echo "Usage: $0 {start|stop|status|rotate-logs|restart|condrestart|try-restart|reload|force-reload}" >&2
RETVAL=1
;;
esac
exit $RETVAL

View File

@ -0,0 +1,7 @@
/var/log/rabbitmq/*.log {
weekly
missingok
rotate 20
compress
notifempty
}

View File

@ -0,0 +1,4 @@
deps/rabbit/docs/rabbitmq-env.conf.5
deps/rabbit/docs/rabbitmq-plugins.8
deps/rabbit/docs/rabbitmq-server.8
deps/rabbit/docs/rabbitmqctl.8

View File

@ -0,0 +1,39 @@
# systemd unit example
[Unit]
Description=RabbitMQ broker
After=network.target epmd@0.0.0.0.socket
Wants=network.target epmd@0.0.0.0.socket
[Service]
Type=notify
User=rabbitmq
Group=rabbitmq
UMask=0027
NotifyAccess=all
TimeoutStartSec=600
# To override LimitNOFILE, create the following file:
#
# /etc/systemd/system/rabbitmq-server.service.d/limits.conf
#
# with the following content:
#
# [Service]
# LimitNOFILE=65536
LimitNOFILE=32768
# The following setting will automatically restart RabbitMQ
# in the event of a failure. systemd service restarts are not a
# replacement for service monitoring. Please see
# https://www.rabbitmq.com/monitoring.html
Restart=on-failure
RestartSec=10
WorkingDirectory=/var/lib/rabbitmq
ExecStart=/usr/lib/rabbitmq/bin/rabbitmq-server
ExecStop=/usr/lib/rabbitmq/bin/rabbitmqctl shutdown
# See rabbitmq/rabbitmq-server-release#51
SuccessExitStatus=69
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,63 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
DEB_DESTDIR = debian/rabbitmq-server
RABBITMQ_USER ?= rabbitmq
RABBITMQ_GROUP ?= rabbitmq
unexport DEPS_DIR
%:
dh $@ --parallel --with systemd
override_dh_auto_clean:
$(MAKE) clean clean-unpacked-source-dist distclean-manpages
rm -rf .erlang.mk
override_dh_auto_build:
$(MAKE) dist manpages
override_dh_auto_test:
@:
export PREFIX RMQ_ROOTDIR
override_dh_auto_install: PREFIX = /usr
override_dh_auto_install: RMQ_ROOTDIR = $(PREFIX)/lib/rabbitmq
override_dh_auto_install: RMQ_ERLAPP_DIR = $(RMQ_ROOTDIR)/lib/rabbitmq_server-*
override_dh_auto_install:
dh_auto_install
$(MAKE) install-bin DESTDIR=$(DEB_DESTDIR)
sed \
-e 's|@RABBITMQ_USER@|$(RABBITMQ_USER)|' -e 's|@RABBITMQ_GROUP@|$(RABBITMQ_GROUP)|' \
< scripts/rabbitmq-script-wrapper \
> $(DEB_DESTDIR)$(PREFIX)/sbin/rabbitmqctl
chmod 0755 $(DEB_DESTDIR)$(PREFIX)/sbin/rabbitmqctl
for script in rabbitmq-server rabbitmq-plugins rabbitmq-diagnostics rabbitmq-queues rabbitmq-upgrade; do \
cp -a $(DEB_DESTDIR)$(PREFIX)/sbin/rabbitmqctl \
$(DEB_DESTDIR)$(PREFIX)/sbin/$$script; \
done
install -p -D -m 0644 debian/rabbitmq-server.default \
$(DEB_DESTDIR)/etc/default/rabbitmq-server
install -p -D -m 0755 scripts/rabbitmq-server.ocf \
$(DEB_DESTDIR)$(PREFIX)/lib/ocf/resource.d/rabbitmq/rabbitmq-server
install -p -D -m 0755 scripts/rabbitmq-server-ha.ocf \
$(DEB_DESTDIR)$(PREFIX)/lib/ocf/resource.d/rabbitmq/rabbitmq-server-ha
install -p -D -m 0755 scripts/rabbitmqctl-autocomplete.sh \
$(DEB_DESTDIR)/etc/profile.d/rabbitmqctl-autocomplete.sh
install -p -D -m 0755 scripts/zsh_autocomplete.sh \
$(DEB_DESTDIR)/usr/share/zsh/vendor-functions/_enable_rabbitmqctl_completion
rm $(DEB_DESTDIR)$(RMQ_ERLAPP_DIR)/LICENSE* \
$(DEB_DESTDIR)$(RMQ_ERLAPP_DIR)/INSTALL
rmdir $(DEB_DESTDIR)$(PREFIX)/lib/erlang/lib \
$(DEB_DESTDIR)$(PREFIX)/lib/erlang

View File

@ -0,0 +1 @@
3.0 (quilt)

View File

@ -0,0 +1,4 @@
version=4
opts="filenamemangle=s%(?:.*?)?v?@PACKAGE@-(\d[\d.]*)\.tar\.xz%@PACKAGE@-$1.tar.xz%" \
https://github.com/rabbitmq/@PACKAGE@/releases \
(?:.*?/)?v?@PACKAGE@-(\d[\d.]*)\.tar\.xz debian uupdate

View File

@ -0,0 +1,22 @@
#!/usr/bin/env python2
import apt_pkg
import os.path
import sys
if len(sys.argv) != 3:
print('Syntax: %s <version a> <version b>' % (os.path.basename(sys.argv[0])))
sys.exit(64)
a = sys.argv[1]
b = sys.argv[2]
apt_pkg.init_system()
vc = apt_pkg.version_compare(a,b)
if vc > 0:
print('%s < %s' % (b, a))
elif vc == 0:
print('%s = %s' % (a, b))
elif vc < 0:
print('%s < %s' % (a, b))

View File

@ -0,0 +1,8 @@
#!/bin/sh
# vim:sw=2:et:
set -e
VERSION=$1
echo "$VERSION" | sed -E -e 's/-/~/g'

View File

@ -0,0 +1,33 @@
#!/bin/sh
set -e
changes_file=$1
if [ -z "$changes_file" ]; then
echo "Syntax: $(basename $0) <changes file>" 1>&2
exit 64
fi
if [ ! -f "$changes_file" ]; then
exit 0
fi
changes_file_dir=$(dirname "$changes_file")
if test "$changes_file_dir" = '.'; then
changes_file_dir=
else
changes_file_dir="$changes_file_dir/"
fi
# Include the .changes file itself in the list.
echo "$changes_file_dir$(basename "$changes_file")"
# We want to match lines with the following format (it starts
# with a single space):
# f752d307528f0ca87d57995c217344ec 5184732 net extra rabbitmq-(...)
awk '
/^ [a-fA-F0-9]+ / {
if (length($1) == 32) {
print "'$changes_file_dir'" $5;
}
}' < "$changes_file"

View File

@ -0,0 +1,36 @@
#!/bin/sh
set -e
PACKAGE_VERSION=$1
if test -z "$PACKAGE_VERSION"; then
echo "Syntax: $(basename "$0") <debian version>" 1>&2
exit 64
fi
PACKAGE_NAME=$(awk '/^Source:/ { print $2; }' < debian/control)
CHANGELOG_DATE=$(date -R)
if dpkg-parsechangelog --all | \
grep -E -q "^ $PACKAGE_NAME \(${PACKAGE_VERSION}-[^)]\) "; then
exit 0
fi
cat > debian/changelog.tmp <<EOF
${PACKAGE_NAME} (${PACKAGE_VERSION}-1) unstable; urgency=low
* New Upstream Release.
-- RabbitMQ Team <info@rabbitmq.com> ${CHANGELOG_DATE}
EOF
cat debian/changelog >> debian/changelog.tmp
mv -f debian/changelog.tmp debian/changelog
echo
echo '--------------------------------------------------'
dpkg-parsechangelog
echo '--------------------------------------------------'
echo