* add rabbitmq
This commit is contained in:
parent
af964806fe
commit
fbb6f4304f
76
rabbitmq/PKGBUILD
Normal file
76
rabbitmq/PKGBUILD
Normal file
@ -0,0 +1,76 @@
|
||||
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
||||
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
|
||||
# Contributor: Marcello "mereghost" Rocha <marcello.rocha@gmail.com>
|
||||
# Contributor: Gianni Vialetto <gianni at rootcube dot net>
|
||||
# Contributor: Stefan J. Betz <info at stefan-betz dot net>
|
||||
# Contributor: p2k <Patrick dot Schneider at uni-ulm dot de>
|
||||
# Contributor: Jonathan Liu <net147@gmail.com>
|
||||
# Contributor: Christopher Grebs <cg@webshox.org>
|
||||
# Contributor: mutantmonkey
|
||||
|
||||
pkgname=rabbitmq
|
||||
pkgver=3.7.18
|
||||
pkgrel=1
|
||||
pkgdesc='Highly reliable and performant enterprise messaging implementation of AMQP written in Erlang/OTP'
|
||||
url='https://rabbitmq.com'
|
||||
arch=('any')
|
||||
license=('MPL')
|
||||
depends=('util-linux' 'inetutils' 'erlang-nox' 'socat')
|
||||
optdepends=('rabbitmqadmin: CLI management tool'
|
||||
'logrotate: rotate log files')
|
||||
makedepends=('zip' 'unzip' 'libxslt' 'xmlto' 'systemd' 'elixir' 'python' 'python-simplejson' 'rsync')
|
||||
backup=('etc/rabbitmq/rabbitmq-env.conf')
|
||||
options=('!makeflags')
|
||||
install=rabbitmq.install
|
||||
source=(https://github.com/rabbitmq/rabbitmq-server/releases/download/v${pkgver}/rabbitmq-server-${pkgver}.tar.xz{,.asc}
|
||||
rabbitmq-customize-systemd-service.patch
|
||||
rabbitmq-env.conf
|
||||
rabbitmq.sysusers
|
||||
rabbitmq.tmpfiles
|
||||
rabbitmq.logrotate)
|
||||
sha512sums=('7ac10172b2a1d282a0fbcfc13e4612b0aaee31c7248616cc16451c9390aabd96d866619336a29c9bb3b4142d2141b5d442a07a49c6bb0a4ea0cdb287dc813c0f'
|
||||
'SKIP'
|
||||
'4859e67725dc8467b43102200bf47bdf69e3f3b700da859e861327e2f01491bfaeed8e32da4fc2415d8a127037420b768ef321a42d535f181cab56945f83d2c2'
|
||||
'8b841e28fa0a1424dd9e57c0988e015f3cd4cccef0f73ccdb7c7b66d11ca62ba8ef3a59c7ca5e5f0c9c9d8003ac72bf53785985d98aae867961787003286e179'
|
||||
'17d33e7104172bc265d97821fec58f1402ad3103f1ea4b1f6bbabcf0dd840685708a1bdc808b48c1a60726c5c0aa7b6479395afd9360d3116b812c143c432423'
|
||||
'5cbef5497029ff227050c6f18c4fcc35b3922747408d01b7590f096253af82a8a8f16008efcc8ea21f970ce87244de62e2e375f65c49e407e53440eada5d7114'
|
||||
'f2a6aaa38e575e7c947191a7c67add1434beb768c50acb16d5faa5dd83d390a9a5ec7c153487add4ac26de058a02bbb5c3a7d6377e91a1d0cbcca3c1d6797b02')
|
||||
validpgpkeys=('0A9AF2115F4687BD29803A206B73A36E6026DFCA') # RabbitMQ Release Signing Key <info@rabbitmq.com>
|
||||
|
||||
prepare() {
|
||||
cd ${pkgname}-server-${pkgver}
|
||||
sed -E 's|^(SYS_PREFIX=).*$|\1""|' -i deps/rabbit/scripts/rabbitmq-defaults
|
||||
sed -E 's|@RABBITMQ_USER@|rabbitmq|g' -i scripts/rabbitmq-script-wrapper
|
||||
sed -E 's|@RABBITMQ_GROUP@|rabbitmq|g' -i scripts/rabbitmq-script-wrapper
|
||||
sed -E 's|@STDOUT_STDERR_REDIRECTION@||g' -i scripts/rabbitmq-script-wrapper
|
||||
patch -p1 < ../rabbitmq-customize-systemd-service.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
cd ${pkgname}-server-${pkgver}
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd ${pkgname}-server-${pkgver}
|
||||
make DESTDIR="${pkgdir}" PREFIX=/usr RMQ_ROOTDIR=/usr/lib/rabbitmq \
|
||||
install install-man install-bin
|
||||
|
||||
# using script wrapper for better bin handling
|
||||
local libdir="${pkgdir}/usr/lib/rabbitmq/lib/rabbitmq_server-${pkgver}"
|
||||
install -d "${pkgdir}/usr/bin"
|
||||
install -Dm 755 scripts/rabbitmq-script-wrapper -t "${pkgdir}/usr/lib/rabbitmq/bin"
|
||||
for script in "${libdir}"/sbin/rabbit*; do
|
||||
ln -s /usr/lib/rabbitmq/bin/rabbitmq-script-wrapper "${pkgdir}/usr/bin/${script#${libdir}/sbin/}"
|
||||
done
|
||||
|
||||
install -Dm 644 deps/rabbit/docs/rabbitmq-server.service.example "${pkgdir}/usr/lib/systemd/system/rabbitmq.service"
|
||||
install -Dm 644 "${srcdir}/rabbitmq-env.conf" "${pkgdir}/etc/rabbitmq/rabbitmq-env.conf"
|
||||
install -Dm 644 "${srcdir}/rabbitmq.sysusers" "${pkgdir}/usr/lib/sysusers.d/rabbitmq.conf"
|
||||
install -Dm 644 "${srcdir}/rabbitmq.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/rabbitmq.conf"
|
||||
install -Dm 644 "${srcdir}/rabbitmq.logrotate" "${pkgdir}/etc/logrotate.d/rabbitmq"
|
||||
|
||||
chown -R 197:0 "${pkgdir}/etc/rabbitmq"
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
53
rabbitmq/rabbitmq-customize-systemd-service.patch
Normal file
53
rabbitmq/rabbitmq-customize-systemd-service.patch
Normal file
@ -0,0 +1,53 @@
|
||||
From 6990cfa74ea4864b11000b955ae3e5ea26e2b3f7 Mon Sep 17 00:00:00 2001
|
||||
From: anthraxx <levente@leventepolyak.net>
|
||||
Date: Wed, 21 Feb 2018 15:26:12 +0100
|
||||
Subject: [PATCH] Customize systemd service file
|
||||
|
||||
---
|
||||
deps/rabbit/docs/rabbitmq-server.service.example | 14 +++++++++++---
|
||||
1 file changed, 11 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/deps/rabbit/docs/rabbitmq-server.service.example b/deps/rabbit/docs/rabbitmq-server.service.example
|
||||
index f1ab926..9219394 100644
|
||||
--- a/deps/rabbit/docs/rabbitmq-server.service.example
|
||||
+++ b/deps/rabbit/docs/rabbitmq-server.service.example
|
||||
@@ -1,4 +1,3 @@
|
||||
-# systemd unit example
|
||||
[Unit]
|
||||
Description=RabbitMQ broker
|
||||
After=network.target epmd@0.0.0.0.socket
|
||||
@@ -8,20 +7,29 @@ Wants=network.target epmd@0.0.0.0.socket
|
||||
Type=notify
|
||||
User=rabbitmq
|
||||
Group=rabbitmq
|
||||
+SyslogIdentifier=rabbitmq
|
||||
+EnvironmentFile=/etc/rabbitmq/rabbitmq-env.conf
|
||||
+UMask=0027
|
||||
NotifyAccess=all
|
||||
TimeoutStartSec=3600
|
||||
+# Un-comment this setting if you need to increase RabbitMQ's
|
||||
+# open files limit
|
||||
+# LimitNOFILE=16384
|
||||
+#
|
||||
# Note:
|
||||
# You *may* wish to add the following to 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
|
||||
+Restart=on-failure
|
||||
+RestartSec=10
|
||||
WorkingDirectory=/var/lib/rabbitmq
|
||||
ExecStart=/usr/lib/rabbitmq/bin/rabbitmq-server
|
||||
ExecStop=/usr/lib/rabbitmq/bin/rabbitmqctl stop
|
||||
ExecStop=/bin/sh -c "while ps -p $MAINPID >/dev/null 2>&1; do sleep 1; done"
|
||||
+# rabbitmq/rabbitmq-server-release#51
|
||||
+# SuccessExitStatus=69
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
--
|
||||
2.16.2
|
||||
|
3
rabbitmq/rabbitmq-env.conf
Normal file
3
rabbitmq/rabbitmq-env.conf
Normal file
@ -0,0 +1,3 @@
|
||||
NODENAME=rabbit
|
||||
NODE_IP_ADDRESS=0.0.0.0
|
||||
NODE_PORT=5672
|
9
rabbitmq/rabbitmq.install
Normal file
9
rabbitmq/rabbitmq.install
Normal file
@ -0,0 +1,9 @@
|
||||
post_install() {
|
||||
sed -e "/NODENAME/s/rabbit$/rabbit@$(hostname -s)/" -i /etc/rabbitmq/rabbitmq-env.conf
|
||||
}
|
||||
|
||||
post_upgrade() {
|
||||
post_install
|
||||
}
|
||||
|
||||
# vim: ts=2 sw=2 et:
|
6
rabbitmq/rabbitmq.logrotate
Normal file
6
rabbitmq/rabbitmq.logrotate
Normal file
@ -0,0 +1,6 @@
|
||||
/var/log/rabbitmq/*.log {
|
||||
missingok
|
||||
notifempty
|
||||
compress
|
||||
create 640 rabbitmq rabbitmq
|
||||
}
|
1
rabbitmq/rabbitmq.sysusers
Normal file
1
rabbitmq/rabbitmq.sysusers
Normal file
@ -0,0 +1 @@
|
||||
u rabbitmq 197 "RabbitMQ user" /var/lib/rabbitmq
|
2
rabbitmq/rabbitmq.tmpfiles
Normal file
2
rabbitmq/rabbitmq.tmpfiles
Normal file
@ -0,0 +1,2 @@
|
||||
d /var/lib/rabbitmq 0750 rabbitmq rabbitmq - -
|
||||
d /var/log/rabbitmq 0750 rabbitmq rabbitmq - -
|
Loading…
x
Reference in New Issue
Block a user