Fridrich Strba 2024-09-13 15:19:18 +00:00 committed by Git OBS Bridge
commit 4a860145ab
14 changed files with 2218 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

12
README.SUSE Normal file
View File

@ -0,0 +1,12 @@
RabbitMQ and EPMD
===================
RabbitMQ requires epmd to listen on more interfaces than just localhost.
The easiest solution is to set the listening address to "0.0.0.0". But
you can also limit it to certain interfaces/IPs.
For non systemd based distributions you can set EPMD_ADDRESSES in
/etc/sysconfing/erlang.
For systemd based distributions please follow
/usr/share/doc/packages/erlang/README.SUSE

27
rabbitmq-env.conf Normal file
View File

@ -0,0 +1,27 @@
# See man rabbitmq-env.conf(5) for documentation
# Defaults to rabbit. This can be useful if you want to run more than one node
# per machine - RABBITMQ_NODENAME should be unique per erlang-node-and-machine
# combination. See the clustering on a single machine guide for details:
# http://www.rabbitmq.com/clustering.html#single-machine
#NODENAME=rabbit
#
# with the default SUSE epmd.socket we need to listen to localhost to
# properly activate the socket activation. In order to switch back to
# the clustering compatible listen to any address, run this prior removing
# this override:
#
# cat <<EOF > /etc/systemd/system/epmd.socket.d/ports.conf
# [Socket]
# ListenStream=
# ListenStream=[::]:4369
# EOF
NODENAME=rabbit@localhost
# By default RabbitMQ will bind to all interfaces, on IPv4 and IPv6 if
# available. Set this if you only want to bind to one network interface or#
# address family.
#NODE_IP_ADDRESS=127.0.0.1
# Defaults to 5672.
#NODE_PORT=5672

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:62ec3bc41868ef33e0db7f7ac08269015a1ec8f64922fb78b67a0f9150126010
size 5083312

View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEECpryEV9Gh70pgDoga3OjbmAm38oFAmYGX9AACgkQa3OjbmAm
38pJzw//ZjpH6ulGPpHSq/7V6B9PE2tBiYmv2vWozYw+ha9++MqJQQnpJaLZ8ak4
glQOGarYxm3rNYs23xX7qTxxPtlHVk3UOtLSn8KdcoJrEplsYod1UQyeJ6AIU1h6
Tt8kqdK7w5S6A9SWYm/NN+UKAE0jZfnl1Ql3+ewZ+qER6zLd1lKMyEpgr1c0EN+k
KFWRjsbZDVq9g204gBcdvk0VFoMle9C5esGAu47yGYrlPVSXPgfZXwmlDWW7Yrsu
sujMLBXkSOrcFvEcbvX9yqMHu3MIoa/2dNqAlbZbHrM1Bu0JSb5EnyNNAGGtB54b
QDxIY6MWZCLRY8unJ3MdPfIKLj2ozkDSXFXVINZGhaMMeUlM2MrOsOzvcATfevyM
85IKE1VgN40M8301Mo9KFO8X7rx6/o7yqksTgw0gjCNdVzh1oCWqxnKG0FswxY17
zYrsV4rRJNX/TwyThi890kc+/RKykbgKVCbX1hwXgPuNBtZvozScWB5jGszIdGIt
da3p1flAsv75x6+2RgxrHj/JNTlhCo1lCJK7dAPs7PxdSymR/wVwNp56owD9pYfe
fqV+F67Bv9bJMv17DhAaES6ynG6apxraYeeaMu534Uhr6bicssthyz0OjN4Bck1A
AkcRtRLQOrrzev9sHNPyWsggViTc/p05mFlKpDGh5gx6NgAlioI=
=eCUL
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:18353262e77085048bac55cedb55b77f0987dad97649317d812b99b1bdc6661d
size 5198988

View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEECpryEV9Gh70pgDoga3OjbmAm38oFAmbL/IcACgkQa3OjbmAm
38ozHA//ekIx4XpzwtiJIpIKJIzIWDEOmwPJyurhnIpRZh2FOYoILddNAh5jjj56
JuvamsuiwMRIBljfj9fK3TZjOfTz1aa1MLIyWLXA6fxa7U3v33edJUbg1lebO93R
lGr5Cem1lHMEuSZ1yj1mzEcbs362Bime8SdCyz86wqjjGDzlmY7fZf7Iy/CzRvT9
g5AtM81X6KLbYXtV+HlsVkcpIRW4q+uKJEUimyn5UiEWFlddkvcMQMOoy7EdNy/q
zZTYZs5fsegp8k3e2TmM+exE4gpEth7UFDo5xNEHh9sHJjrqGRVLpiGaHWJgL+EB
DVDi7WC+1VdF0GzJfK6+GkPdTWQpLdr4adG1ZItZiciNM5lEAj2QOd8A2XQPfDpd
PNQrUFU/ed7HNEATVA8kPEsnfJuxbquE2pXCLkqrf35jtaQ87z2H36l0MaL8of3U
ESIHhqgxeht3Hbui5CNcgDX1JDDzBGszYJYonDyMFujcgWU7ZIyGAf9wLZwz630h
pWv7S0JM9W+vAjHLVKqZBnFb/x7wk4cB9jaOw9DeeD408164Al4qKzVXyfyK9Fzw
mezwtm42ARUnch82uzv3eNfyf1FkZsaG7Juj568yx0ZkKHYoR7MzX0VHTfETmfXn
Nd77RIv/ah5C8r6G93k+E2Kw4XrGfpTY/RdCeUZryZd3r8LBKJY=
=X4aq
-----END PGP SIGNATURE-----

1749
rabbitmq-server.changes Normal file

File diff suppressed because it is too large Load Diff

52
rabbitmq-server.keyring Normal file
View File

@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=tsX2
-----END PGP PUBLIC KEY BLOCK-----

View File

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

37
rabbitmq-server.service Normal file
View File

@ -0,0 +1,37 @@
[Unit]
Description=RabbitMQ broker
After=syslog.target network.target epmd.service
BindsTo=epmd.service
[Service]
# added automatically, for details please see
# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
ProtectSystem=full
ProtectHome=true
PrivateDevices=true
ProtectHostname=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectKernelLogs=true
ProtectControlGroups=true
RestrictRealtime=true
# end of automatic additions
Type=notify
User=rabbitmq
Group=rabbitmq
LimitNOFILE=65535
NotifyAccess=all
WorkingDirectory=/var/lib/rabbitmq
ExecStart=/usr/sbin/rabbitmq-server
ExecStop=/usr/sbin/rabbitmqctl shutdown
# See rabbitmq/rabbitmq-server-release#51
SuccessExitStatus=69
TimeoutStartSec=300
# required on machines with many cores (bsc#1094896):
TasksMax=8192
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target

271
rabbitmq-server.spec Normal file
View File

@ -0,0 +1,271 @@
#
# spec file for package rabbitmq-server
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
#Compat macro for new _fillupdir macro introduced in Nov 2017
%if ! %{defined _fillupdir}
%define _fillupdir /var/adm/fillup-templates
%endif
%bcond_without split_plugins
# 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-%{version}
%if %{undefined _initddir}
%define _initddir %{_sysconfdir}/init.d
%endif
%define _make_args DESTDIR="%{buildroot}" PREFIX="%{_exec_prefix}" RMQ_ROOTDIR=%{_rabbit_libdir} RMQ_ERLAPP_DIR=%{_rabbit_erllibdir} MANDIR="%{_mandir}" DOC_INSTALL_DIR=%{buildroot}/%{_docdir} VERSION=%{version} V=1
%define _plugins_state_dir %{_localstatedir}/lib/rabbitmq/plugins
%define _rabbitmqctl_autocomplete scripts/bash_autocomplete.sh
%define _rabbitmq_user rabbitmq
%define _rabbitmq_group rabbitmq
Name: rabbitmq-server
Version: 3.13.7
Release: 0
Summary: A message broker supporting AMQP, STOMP and MQTT
License: MPL-2.0
Group: System/Daemons
URL: https://www.rabbitmq.com/
Source: https://github.com/rabbitmq/rabbitmq-server/releases/download/v%{version}/rabbitmq-server-%{version}.tar.xz
Source1: https://github.com/rabbitmq/rabbitmq-server/releases/download/v%{version}/rabbitmq-server-%{version}.tar.xz.asc
Source2: https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc#/%{name}.keyring
Source3: https://raw.githubusercontent.com/rabbitmq/rabbitmq-packaging/v%{version}/RPMS/Fedora/rabbitmq-server.logrotate
Source4: rabbitmq-env.conf
Source6: rabbitmq-server.service
Source7: https://raw.githubusercontent.com/rabbitmq/rabbitmq-packaging/v%{version}/RPMS/Fedora/rabbitmq-server.tmpfiles
Source8: README.SUSE
BuildRequires: elixir
# https://www.rabbitmq.com/which-erlang.html
BuildRequires: erlang >= 25.0
BuildRequires: erlang-src
BuildRequires: fdupes
BuildRequires: hostname
# BuildRequires: libxslt
BuildRequires: python3
BuildRequires: rsync
BuildRequires: unzip
BuildRequires: xmlto
BuildRequires: xz
BuildRequires: zip
Requires: erlang >= 25.0
Requires: erlang-epmd
Requires: logrotate
Provides: AMQP-server
Requires(pre): shadow
Requires(pre): %fillup_prereq
Requires: rabbitmq-server-plugins
BuildRequires: pkgconfig(systemd)
Provides: group(%{_rabbitmq_group})
Provides: user(%{_rabbitmq_user})
%{?systemd_ordering}
# Do not use noarch since the Erlang packaging does not really allow that
#BuildArch: noarch
%description
RabbitMQ is an implementation of an AMQP broker. AMQP is an emerging
standard for messaging.
%package plugins
Summary: Plugins for the RabbitMQ server
Group: System/Daemons
Requires: rabbitmq-server = %{version}
%description plugins
RabbitMQ is an implementation of an AMQP broker. AMQP is an emerging
standard for messaging.
This package includes some plugins for the RabbitMQ server.
%package -n erlang-rabbitmq-client
Summary: RabbitMQ AMQP language bindings for Erlang
Group: Development/Libraries/Other
Requires: erlang
Provides: erlang-amqp_client = %{version}
Provides: erlang-gen_server2 = %{version}
Provides: erlang-rabbit_common = %{version}
%description -n erlang-rabbitmq-client
RabbitMQ is an implementation of an AMQP broker. AMQP is an emerging
standard for messaging.
This package includes the RabbitMQ AMQP language bindings for Erlang.
%package bash-completion
Summary: Bash completion for %{name}
Group: System/Shells
Requires: %{name} = %{version}
Requires: bash-completion
Supplements: (%{name} and bash-completion)
BuildArch: noarch
%description bash-completion
Optional dependency offering bash completion for %{name}.
%package zsh-completion
Summary: Zsh completion for %{name}
Group: System/Shells
BuildRequires: zsh
Requires: %{name} = %{version}
Requires: zsh
Supplements: (%{name} and zsh)
BuildArch: noarch
%description zsh-completion
Optional dependency offering zsh completion for %{name}.
%prep
%autosetup -p1
cp %{SOURCE8} .
%build
# Make elixir happy with Unicode
export LANG=en_US.UTF-8
export PYTHON=%{_bindir}/python3
make all %{_make_args} %{?_smp_mflags}
%install
# Make elixir happy with Unicode
export LANG=en_US.UTF-8
export PYTHON=%{_bindir}/python3
make install install-bin install-man %{_make_args}
mkdir -p %{buildroot}%{_sbindir}
install -p -D -m 644 %{SOURCE6} %{buildroot}%{_unitdir}/%{name}.service
ln -s -f %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
install -D -p -m 0644 %{SOURCE7} %{buildroot}%{_prefix}/lib/tmpfiles.d/%{name}.conf
# Use /run instead of deprecated /var/run in tmpfiles.conf (bsc#1185075)
sed -i 's/\/var//' %{buildroot}%{_prefix}/lib/tmpfiles.d/%{name}.conf
# Install wrapper scripts
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 rabbitmq-streams; do \
cp -a %{buildroot}%{_sbindir}/rabbitmqctl %{buildroot}%{_sbindir}/$script
done
# install config files
install -p -D -m 0644 deps/rabbit/docs/rabbitmq.conf.example %{buildroot}/%{_sysconfdir}/rabbitmq/rabbitmq.conf
install -p -D -m 0644 deps/rabbit/docs/advanced.config.example %{buildroot}/%{_sysconfdir}/rabbitmq/advanced.config.example
install -p -D -m 0644 deps/rabbit/docs/rabbitmq.conf.example %{buildroot}/%{_sysconfdir}/rabbitmq/rabbitmq.config.example
install -p -D -m 0644 %{SOURCE4} %{buildroot}/%{_sysconfdir}/rabbitmq/rabbitmq-env.conf
# Copy all necessary lib files etc.
install -p -D -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/logrotate.d/rabbitmq-server
# Install autocomplete scripts
for script in rabbitmqctl rabbitmq-plugins rabbitmq-diagnostics; do
install -p -D -m 0644 %{_rabbitmqctl_autocomplete} %{buildroot}%{_datadir}/bash-completion/completions/$script
done
install -p -D -m 0644 scripts/zsh_autocomplete.sh %{buildroot}%{_datadir}/zsh/site-functions/_enable_rabbitmqctl_completion
# Install Erlang client
mkdir -p %{buildroot}%{_libdir}/erlang/lib
for i in amqp_client rabbit_common ; do
cp -r %{buildroot}%{_rabbit_erllibdir}/plugins/$i* -d %{buildroot}%{_libdir}/erlang/lib/
done
# Create other necessary directories for RabbitMQ server
mkdir -p %{buildroot}%{_sysconfdir}/rabbitmq
mkdir -p %{buildroot}%{_localstatedir}/lib/rabbitmq/mnesia
mkdir -p %{buildroot}%{_localstatedir}/log/rabbitmq
# Create hardlinks for duplicate files
%fdupes %{buildroot}/%{_datadir}
%fdupes %{buildroot}/%{_libdir}
%fdupes %{buildroot}/%{_sbindir}
%pre
getent group %{_rabbitmq_group} >/dev/null || groupadd -r %{_rabbitmq_group}
getent passwd %{_rabbitmq_user} >/dev/null || useradd -r -g %{_rabbitmq_group} \
-d %{_localstatedir}/lib/rabbitmq \
-s /sbin/nologin \
-c "user for RabbitMQ messaging server" %{_rabbitmq_user}
%service_add_pre %{name}.service
%post
%service_add_post %{name}.service
systemd-tmpfiles --create --clean /usr/lib/tmpfiles.d/rabbitmq-server.conf
%preun
# 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
%service_del_preun %{name}.service
%postun
%service_del_postun %{name}.service
%files
%config(noreplace) %{_sysconfdir}/logrotate.d/rabbitmq-server
%config(noreplace) %{_sysconfdir}/rabbitmq/
%{_rabbit_libdir}
%if %{with split_plugins}
%exclude %{_rabbit_erllibdir}/plugins/rabbitmq_*
%endif
#
%{_unitdir}/%{name}.service
/usr/lib/tmpfiles.d/rabbitmq-server.conf
#
%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
#
%{_sbindir}/rabbitmq-plugins
%{_sbindir}/rabbitmq-server
%{_sbindir}/rabbitmqctl
%{_sbindir}/rabbitmq-queues
%{_sbindir}/rabbitmq-upgrade
%{_sbindir}/rcrabbitmq-server
%{_sbindir}/rabbitmq-diagnostics
%{_sbindir}/rabbitmq-streams
#
%license LICENSE*
%doc README* CODE_OF_CONDUCT.md CONTRIBUTING.md deps/rabbit/docs/set_rabbitmq_policy.sh.example
%{_mandir}/man5/rabbitmq-env.conf.5%{?ext_man}
%{_mandir}/man8/rabbitmq*.8%{?ext_man}
# E: script-without-shebang
%exclude %{_rabbit_libdir}/autocomplete/bash_autocomplete.sh
%exclude %{_rabbit_libdir}/autocomplete/zsh_autocomplete.sh
%if %{with split_plugins}
%files plugins
%{_rabbit_erllibdir}/plugins/rabbitmq_*
%endif
%files -n erlang-rabbitmq-client
%{_libdir}/erlang/lib/amqp_client*/
%{_libdir}/erlang/lib/rabbit_common*/
%files bash-completion
%{_datadir}/bash-completion/completions/rabbitmq*
%files zsh-completion
%{_datadir}/zsh/site-functions/_enable_rabbitmqctl_completion
%changelog

1
rabbitmq-server.tmpfiles Normal file
View File

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