1 %define debug_package %{nil}
2 %define erlang_minver R13B-03
7 License: MPLv1.1 and MIT and ASL 2.0 and BSD
8 Group: Development/Libraries
9 Source: http://www.rabbitmq.com/releases/rabbitmq-server/v%{version}/%{name}-%{version}.tar.gz
10 Source1: rabbitmq-server.init
11 Source2: rabbitmq-script-wrapper
12 Source3: rabbitmq-server.logrotate
13 Source4: rabbitmq-server.ocf
15 Source6: rabbitmq-server.default
16 URL: http://www.rabbitmq.com/
18 BuildRequires: erlang >= %{erlang_minver}, python-simplejson, xmlto, libxslt, zip
19 Requires: erlang-mnesia >= %{erlang_minver}
20 Requires: erlang-erts >= %{erlang_minver}
21 Requires: erlang-xmerl >= %{erlang_minver}
22 Requires: erlang-stdlib >= %{erlang_minver}
23 Requires: erlang-public_key >= %{erlang_minver}
24 Requires: erlang-ssl >= %{erlang_minver}
25 Requires: erlang-kernel >= %{erlang_minver}
26 Requires: erlang-sasl >= %{erlang_minver}
27 Requires: erlang-os_mon >= %{erlang_minver}
28 Requires: erlang-tools >= %{erlang_minver}
30 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%{_arch}-root
31 Summary: The RabbitMQ server
32 Requires(post): chkconfig initscripts
33 Requires(pre): chkconfig initscripts
36 RabbitMQ is an implementation of AMQP, the emerging standard for high
37 performance enterprise messaging. The RabbitMQ server is a robust and
38 scalable implementation of an AMQP broker.
40 # We want to install into /usr/lib, even on 64-bit platforms
41 %define _rabbit_libdir %{_exec_prefix}/lib/rabbitmq
42 %define _rabbit_erllibdir %{_rabbit_libdir}/lib/rabbitmq_server-%{version}
43 %define _rabbit_wrapper %{_builddir}/`basename %{S:2}`
44 %define _rabbit_server_ocf %{_builddir}/`basename %{S:4}`
45 %define _plugins_state_dir %{_localstatedir}/lib/rabbitmq/plugins
48 %define _maindir %{buildroot}%{_rabbit_erllibdir}
55 cp %{S:2} %{_rabbit_wrapper}
56 cp %{S:4} %{_rabbit_server_ocf}
57 cp %{S:5} %{_builddir}/rabbitmq-server-%{version}/README
63 # Note that we pass /tmp to DOC_INSTALL_DIR here because we're using %doc
64 # to actually install rabbitmq.config.example, so this is just a fake/temp path
65 make install TARGET_DIR=%{_maindir} \
66 SBIN_DIR=%{buildroot}%{_rabbit_libdir}/bin \
67 MAN_DIR=%{buildroot}%{_mandir} \
70 mkdir -p %{buildroot}%{_localstatedir}/lib/rabbitmq/mnesia
71 mkdir -p %{buildroot}%{_localstatedir}/log/rabbitmq
72 mkdir -p %{buildroot}%{_sysconfdir}/default
74 #Copy all necessary lib files etc.
75 install -p -D -m 0755 %{S:1} %{buildroot}%{_initrddir}/rabbitmq-server
76 install -p -D -m 0755 %{_rabbit_wrapper} %{buildroot}%{_sbindir}/rabbitmqctl
77 install -p -D -m 0755 %{_rabbit_wrapper} %{buildroot}%{_sbindir}/rabbitmq-server
78 install -p -D -m 0755 %{_rabbit_wrapper} %{buildroot}%{_sbindir}/rabbitmq-plugins
79 install -p -D -m 0755 %{_rabbit_server_ocf} %{buildroot}%{_exec_prefix}/lib/ocf/resource.d/rabbitmq/rabbitmq-server
81 install -p -D -m 0644 %{S:3} %{buildroot}%{_sysconfdir}/logrotate.d/rabbitmq-server
82 install -p -D -m 0644 %{S:6} %{buildroot}%{_sysconfdir}/default/rabbitmq-server
84 mkdir -p %{buildroot}%{_sysconfdir}/rabbitmq
86 rm %{_maindir}/LICENSE %{_maindir}/LICENSE-MPL-RabbitMQ %{_maindir}/INSTALL
88 #Build the list of files
89 rm -f %{_builddir}/%{name}.files
90 echo '%defattr(-,root,root, -)' >%{_builddir}/%{name}.files
92 find . -type f ! -regex '\.%{_sysconfdir}.*' \
93 ! -regex '\.\(%{_rabbit_erllibdir}\|%{_rabbit_libdir}\).*' \
94 | sed -e 's/^\.//' >> %{_builddir}/%{name}.files)
99 # Upgrade - stop previous instance of rabbitmq-server init.d script
100 /sbin/service rabbitmq-server stop
103 # create rabbitmq group
104 if ! getent group rabbitmq >/dev/null; then
108 # create rabbitmq user
109 if ! getent passwd rabbitmq >/dev/null; then
110 useradd -r -g rabbitmq -d %{_localstatedir}/lib/rabbitmq rabbitmq \
111 -c "RabbitMQ messaging server"
115 /sbin/chkconfig --add %{name}
116 if [ -f %{_sysconfdir}/rabbitmq/rabbitmq.conf ] && [ ! -f %{_sysconfdir}/rabbitmq/rabbitmq-env.conf ]; then
117 mv %{_sysconfdir}/rabbitmq/rabbitmq.conf %{_sysconfdir}/rabbitmq/rabbitmq-env.conf
123 /sbin/service rabbitmq-server stop
124 /sbin/chkconfig --del rabbitmq-server
126 # We do not remove /var/log and /var/lib directories
127 # Leave rabbitmq user and group
130 # Clean out plugin activation state, both on uninstall and upgrade
131 rm -rf %{_plugins_state_dir}
132 for ext in rel script boot ; do
133 rm -f %{_rabbit_erllibdir}/ebin/rabbit.$ext
136 %files -f ../%{name}.files
137 %defattr(-,root,root,-)
138 %attr(0755, rabbitmq, rabbitmq) %dir %{_localstatedir}/lib/rabbitmq
139 %attr(0755, rabbitmq, rabbitmq) %dir %{_localstatedir}/log/rabbitmq
140 %dir %{_sysconfdir}/rabbitmq
142 %{_rabbit_libdir}/bin
143 %{_initrddir}/rabbitmq-server
144 %config(noreplace) %{_sysconfdir}/logrotate.d/rabbitmq-server
145 %config(noreplace) %{_sysconfdir}/default/rabbitmq-server
148 %doc docs/rabbitmq.config.example
154 * Thu Jan 23 2014 emile@rabbitmq.com 3.2.3-1
155 - New Upstream Release
157 * Tue Dec 10 2013 emile@rabbitmq.com 3.2.2-1
158 - New Upstream Release
160 * Wed Oct 23 2013 emile@rabbitmq.com 3.2.0-1
161 - New Upstream Release
163 * Thu Aug 15 2013 simon@rabbitmq.com 3.1.5-1
164 - New Upstream Release
166 * Tue Jun 25 2013 tim@rabbitmq.com 3.1.3-1
167 - New Upstream Release
169 * Mon Jun 24 2013 tim@rabbitmq.com 3.1.2-1
170 - New Upstream Release
172 * Mon May 20 2013 tim@rabbitmq.com 3.1.1-1
175 * Wed May 1 2013 simon@rabbitmq.com 3.1.0-1
176 - New Upstream Release
178 * Mon Dec 24 2012 Matthew Mosesohn <mmosesohn@mirantis.com> 2.8.7-2
179 - Added zip for buildreq
181 * Tue Dec 11 2012 simon@rabbitmq.com 3.0.1-1
182 - New Upstream Release
184 * Fri Nov 16 2012 simon@rabbitmq.com 3.0.0-1
185 - New Upstream Release
187 * Fri Dec 16 2011 steve@rabbitmq.com 2.7.1-1
188 - New Upstream Release
190 * Tue Nov 8 2011 steve@rabbitmq.com 2.7.0-1
191 - New Upstream Release
193 * Fri Sep 9 2011 tim@rabbitmq.com 2.6.1-1
194 - New Upstream Release
196 * Fri Aug 26 2011 tim@rabbitmq.com 2.6.0-1
197 - New Upstream Release
199 * Mon Jun 27 2011 simon@rabbitmq.com 2.5.1-1
200 - New Upstream Release
202 * Thu Jun 9 2011 jerryk@vmware.com 2.5.0-1
203 - New Upstream Release
205 * Thu Apr 7 2011 Alexandru Scvortov <alexandru@rabbitmq.com> 2.4.1-1
206 - New Upstream Release
208 * Tue Mar 22 2011 Alexandru Scvortov <alexandru@rabbitmq.com> 2.4.0-1
209 - New Upstream Release
211 * Thu Feb 3 2011 simon@rabbitmq.com 2.3.1-1
212 - New Upstream Release
214 * Tue Feb 1 2011 simon@rabbitmq.com 2.3.0-1
215 - New Upstream Release
217 * Mon Nov 29 2010 rob@rabbitmq.com 2.2.0-1
218 - New Upstream Release
220 * Tue Oct 19 2010 vlad@rabbitmq.com 2.1.1-1
221 - New Upstream Release
223 * Tue Sep 14 2010 marek@rabbitmq.com 2.1.0-1
224 - New Upstream Release
226 * Mon Aug 23 2010 mikeb@rabbitmq.com 2.0.0-1
227 - New Upstream Release
229 * Wed Jul 14 2010 Emile Joubert <emile@rabbitmq.com> 1.8.1-1
230 - New Upstream Release
232 * Tue Jun 15 2010 Matthew Sackman <matthew@rabbitmq.com> 1.8.0-1
233 - New Upstream Release
235 * Mon Feb 15 2010 Matthew Sackman <matthew@lshift.net> 1.7.2-1
236 - New Upstream Release
238 * Fri Jan 22 2010 Matthew Sackman <matthew@lshift.net> 1.7.1-1
239 - New Upstream Release
241 * Mon Oct 5 2009 David Wragg <dpw@lshift.net> 1.7.0-1
242 - New upstream release
244 * Wed Jun 17 2009 Matthias Radestock <matthias@lshift.net> 1.6.0-1
245 - New upstream release
247 * Tue May 19 2009 Matthias Radestock <matthias@lshift.net> 1.5.5-1
248 - Maintenance release for the 1.5.x series
250 * Mon Apr 6 2009 Matthias Radestock <matthias@lshift.net> 1.5.4-1
251 - Maintenance release for the 1.5.x series
253 * Tue Feb 24 2009 Tony Garnock-Jones <tonyg@lshift.net> 1.5.3-1
254 - Maintenance release for the 1.5.x series
256 * Mon Feb 23 2009 Tony Garnock-Jones <tonyg@lshift.net> 1.5.2-1
257 - Maintenance release for the 1.5.x series
259 * Mon Jan 19 2009 Ben Hood <0x6e6562@gmail.com> 1.5.1-1
260 - Maintenance release for the 1.5.x series
262 * Wed Dec 17 2008 Matthias Radestock <matthias@lshift.net> 1.5.0-1
263 - New upstream release
265 * Thu Jul 24 2008 Tony Garnock-Jones <tonyg@lshift.net> 1.4.0-1
266 - New upstream release
268 * Mon Mar 3 2008 Adrien Pierard <adrian@lshift.net> 1.3.0-1
269 - New upstream release
271 * Wed Sep 26 2007 Simon MacMullen <simon@lshift.net> 1.2.0-1
272 - New upstream release
274 * Wed Aug 29 2007 Simon MacMullen <simon@lshift.net> 1.1.1-1
275 - New upstream release
277 * Mon Jul 30 2007 Simon MacMullen <simon@lshift.net> 1.1.0-1.alpha
278 - New upstream release
280 * Tue Jun 12 2007 Hubert Plociniczak <hubert@lshift.net> 1.0.0-1.20070607
281 - Building from source tarball, added starting script, stopping
283 * Mon May 21 2007 Hubert Plociniczak <hubert@lshift.net> 1.0.0-1.alpha
284 - Initial build of server library of RabbitMQ package