diff --git a/apk/rabbitmq-server/APKBUILD b/apk/rabbitmq-server/APKBUILD index 035729e..f4af932 100644 --- a/apk/rabbitmq-server/APKBUILD +++ b/apk/rabbitmq-server/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Nathan Johnson # Maintainer: Nathan Johnson pkgname=rabbitmq-server -pkgver=3.7.11 -pkgrel=0 +pkgver=3.7.18 +pkgrel=1 pkgdesc="RabbitMQ is an open source multi-protocol messaging broker." url="https://www.rabbitmq.com/" arch="noarch !s390x" @@ -11,10 +11,9 @@ depends="erlang erlang-tools erlang-runtime-tools erlang-stdlib logrotate erlang-ssl erlang-crypto erlang-parsetools erlang-mnesia erlang-sasl erlang-inets erlang-syntax-tools erlang-eldap erlang-xmerl erlang-os-mon erlang-asn1 erlang-public-key" -depends_dev="" -makedepends="$depends_dev erlang-dev python2 py2-simplejson xmlto libxslt +makedepends="$depends_dev erlang-dev python3 py3-simplejson xmlto libxslt rsync zip gawk grep erlang-compiler erlang-erl-docgen - erlang-edoc socat elixir" + erlang-edoc socat erlang-eunit elixir" install="$pkgname.pre-install $pkgname.post-deinstall" pkgusers="rabbitmq" pkggroups="rabbitmq" @@ -22,34 +21,37 @@ subpackages="$pkgname-doc" source=" rabbitmq-server.initd rabbitmq-server.logrotate - https://github.com/rabbitmq/${pkgname}/releases/download/v${pkgver}/${pkgname}-${pkgver}.tar.xz + https://github.com/rabbitmq/rabbitmq-server/releases/download/v$pkgver/rabbitmq-server-$pkgver.tar.xz + py3.patch " +options="!check" # test suite broken + +# secfixes: +# 3.7.17: +# - CVE-2015-9251 +# - CVE-2017-16012 +# - CVE-2019-11358 -builddir="$srcdir/${pkgname}-${pkgver}" build() { - cd "$builddir" - make dist manpages + make dist manpages PYTHON=python3 } package() { - cd "$builddir" - make install install-bin install-man DESTDIR="$pkgdir" PREFIX=/usr \ - RMQ_ROOTDIR="/usr/lib/rabbitmq" MANDIR=/usr/share/man + RMQ_ROOTDIR="/usr/lib/rabbitmq" MANDIR=/usr/share/man PYTHON=python3 mkdir -p "$pkgdir"/var/lib/rabbitmq/mnesia mkdir -p "$pkgdir"/var/log/rabbitmq #Copy all necessary lib files etc. install -p -m755 -D "$builddir"/scripts/rabbitmq-server.ocf \ - "$pkgdir"/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server || return 1 + "$pkgdir"/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server install -p -m755 -D "$builddir"/scripts/rabbitmq-server-ha.ocf \ - "$pkgdir"/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server-ha \ - || return 1 + "$pkgdir"/usr/lib/ocf/resource.d/rabbitmq/rabbitmq-server-ha install -p -m644 -D "$srcdir/"$pkgname.logrotate \ - "$pkgdir"/etc/logrotate.d/rabbitmq-server || return 1 + "$pkgdir"/etc/logrotate.d/rabbitmq-server install -m755 -D "$srcdir"/$pkgname.initd \ - "$pkgdir"/etc/init.d/$pkgname || return 1 + "$pkgdir"/etc/init.d/$pkgname mkdir -p "$pkgdir"/usr/sbin # This is lifted / adapted from the official upstream spec file. @@ -79,4 +81,5 @@ package() { sha512sums="a8bb02a7cae1f8720e5c7aaabfe6a2c0e731cffbe0d8f99bdcb6597daa654dc49e6d41943974601435700cf469eaa8286dc91a3255a6b9023754c3861fbb5cd9 rabbitmq-server.initd b8655cb048ab3b32001d4e6920bb5366696f3a5da75c053605e9b270e771c548e36858dca8338813d34376534515bba00af5e6dd7b4b1754a0e64a8fb756e3f3 rabbitmq-server.logrotate -a54034ebc919be0c6f58832ea5d47f8e3964e30ca9185c59bf882c3dc17d1df5b6e1ab0460f75e8cf0cc325504cc3a674f7cb44a5d7613e16a5ad8b721a286a4 rabbitmq-server-3.7.11.tar.xz" +7ac10172b2a1d282a0fbcfc13e4612b0aaee31c7248616cc16451c9390aabd96d866619336a29c9bb3b4142d2141b5d442a07a49c6bb0a4ea0cdb287dc813c0f rabbitmq-server-3.7.18.tar.xz +7862c8566631aeb8c7756e5c8ea11705546ffcdca6ec9058516f91c2650a21b1bb373879e8eb8a78dc5af808eb1fdf6c8167997ea7feace2de61dfa1fb1e5c8b py3.patch" diff --git a/apk/rabbitmq-server/py3.patch b/apk/rabbitmq-server/py3.patch new file mode 100644 index 0000000..24f3b06 --- /dev/null +++ b/apk/rabbitmq-server/py3.patch @@ -0,0 +1,112 @@ +diff --git a/deps/amqp10_common/codegen.py b/deps/amqp10_common/codegen.py +index dc4480a..d573bcf 100755 +--- a/deps/amqp10_common/codegen.py ++++ b/deps/amqp10_common/codegen.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + from __future__ import print_function + +diff --git a/deps/rabbit_common/codegen.py b/deps/rabbit_common/codegen.py +index 8b81362..70bd7fa 100755 +--- a/deps/rabbit_common/codegen.py ++++ b/deps/rabbit_common/codegen.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + ## The contents of this file are subject to the Mozilla Public License + ## Version 1.1 (the "License"); you may not use this file except in +diff --git a/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py b/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py +index 1ae2e80..3e61442 100755 +--- a/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py ++++ b/deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_django/manage.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + import os + import sys + +diff --git a/deps/rabbitmq_consistent_hash_exchange/README.md b/deps/rabbitmq_consistent_hash_exchange/README.md +index ce1623f..6ff906b 100644 +--- a/deps/rabbitmq_consistent_hash_exchange/README.md ++++ b/deps/rabbitmq_consistent_hash_exchange/README.md +@@ -150,7 +150,7 @@ Executable versions of some of the code examples can be found under [./examples] + This version of the example uses [Pika](https://pika.readthedocs.io/en/stable/), the most widely used Python client for RabbitMQ: + + ``` python +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + import pika + import time +@@ -342,7 +342,7 @@ routed to the same **arbitrarily chosen** queue. + #### Code Example in Python + + ``` python +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + import pika + import time +@@ -544,7 +544,7 @@ routed to the same **arbitrarily chosen** queue. + #### Code Example in Python + + ``` python +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + import pika + import time +diff --git a/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py b/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py +index 6cf67d6..30e43ea 100644 +--- a/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py ++++ b/deps/rabbitmq_consistent_hash_exchange/examples/python/example1.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + import pika + import time +diff --git a/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py b/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py +index 8c1ac15..0099b28 100644 +--- a/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py ++++ b/deps/rabbitmq_consistent_hash_exchange/examples/python/example2.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + import pika + import time +diff --git a/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py b/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py +index 0b74501..c11a4ce 100644 +--- a/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py ++++ b/deps/rabbitmq_consistent_hash_exchange/examples/python/example3.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + import pika + import time +diff --git a/deps/rabbitmq_management/bin/rabbitmqadmin b/deps/rabbitmq_management/bin/rabbitmqadmin +index 55173cb..04c0c12 100755 +--- a/deps/rabbitmq_management/bin/rabbitmqadmin ++++ b/deps/rabbitmq_management/bin/rabbitmqadmin +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + + # The contents of this file are subject to the Mozilla Public License + # Version 1.1 (the "License"); you may not use this file except in +diff --git a/deps/rabbitmq_trust_store/examples/rabbitmq_trust_store_django/manage.py b/deps/rabbitmq_trust_store/examples/rabbitmq_trust_store_django/manage.py +index 469f277..ea21f63 100755 +--- a/deps/rabbitmq_trust_store/examples/rabbitmq_trust_store_django/manage.py ++++ b/deps/rabbitmq_trust_store/examples/rabbitmq_trust_store_django/manage.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python3 + import os + import sys + + diff --git a/apk/rabbitmq-server/rabbitmq-server.pre-install b/apk/rabbitmq-server/rabbitmq-server.pre-install index 8e0b7ab..0c67e40 100644 --- a/apk/rabbitmq-server/rabbitmq-server.pre-install +++ b/apk/rabbitmq-server/rabbitmq-server.pre-install @@ -1,6 +1,6 @@ #!/bin/sh addgroup -S rabbitmq 2>/dev/null -adduser -S -D -H -s /sbin/nologin -h /usr/lib/rabbitmq -G rabbitmq \ +adduser -S -D -H -s /sbin/nologin -h /var/lib/rabbitmq -G rabbitmq \ -g 'RabbitMQ Server' rabbitmq 2>/dev/null exit 0 diff --git a/lxc-services/rabbitmq/image b/lxc-services/rabbitmq/image index a01a64f..98cea79 100644 --- a/lxc-services/rabbitmq/image +++ b/lxc-services/rabbitmq/image @@ -4,13 +4,13 @@ FROM alpine3.11_3.11.3-200313 RUN EOF # Create OS user (which will be picked up later by apk add) addgroup -S -g 5672 rabbitmq - adduser -S -u 5672 -h /usr/lib/rabbitmq -s /bin/false -g rabbitmq -G rabbitmq rabbitmq + adduser -S -u 5672 -h /var/lib/rabbitmq -s /bin/false -g rabbitmq -G rabbitmq rabbitmq # Install RabbitMQ apk --no-cache add rabbitmq-server@vm EOF USER rabbitmq -ENV HOME /usr/lib/rabbitmq +ENV HOME /var/lib/rabbitmq CMD /usr/sbin/rabbitmq-server READY /usr/sbin/rabbitmqctl await_startup