Update version according to OSCI-1016
[packages/centos6/rabbitmq-server.git] / rabbitmq-server.spec
1 %define debug_package %{nil}
2
3 Name: rabbitmq-server
4 Version: 3.2.3
5 Release: 1%{?dist}
6 License: MPLv1.1 and MIT and ASL 2.0 and BSD
7 Group: Development/Libraries
8 Source: http://www.rabbitmq.com/releases/rabbitmq-server/v%{version}/%{name}-%{version}.tar.gz
9 Source1: rabbitmq-server.init
10 Source2: rabbitmq-script-wrapper
11 Source3: rabbitmq-server.logrotate
12 Source4: rabbitmq-server.ocf
13 Source5: README
14 Source6: rabbitmq-server.default
15 URL: http://www.rabbitmq.com/
16 BuildArch: noarch
17 BuildRequires: erlang >= R13B-03, python-simplejson, xmlto, libxslt, zip
18 Requires: erlang >= R13B-03, logrotate
19 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%{_arch}-root
20 Summary: The RabbitMQ server
21 Requires(post): chkconfig initscripts
22 Requires(pre): chkconfig initscripts
23
24 %description
25 RabbitMQ is an implementation of AMQP, the emerging standard for high
26 performance enterprise messaging. The RabbitMQ server is a robust and
27 scalable implementation of an AMQP broker.
28
29 # We want to install into /usr/lib, even on 64-bit platforms
30 %define _rabbit_libdir %{_exec_prefix}/lib/rabbitmq
31 %define _rabbit_erllibdir %{_rabbit_libdir}/lib/rabbitmq_server-%{version}
32 %define _rabbit_wrapper %{_builddir}/`basename %{S:2}`
33 %define _rabbit_server_ocf %{_builddir}/`basename %{S:4}`
34 %define _plugins_state_dir %{_localstatedir}/lib/rabbitmq/plugins
35
36
37 %define _maindir %{buildroot}%{_rabbit_erllibdir}
38
39
40 %prep
41 %setup -q
42
43 %build
44 cp %{S:2} %{_rabbit_wrapper}
45 cp %{S:4} %{_rabbit_server_ocf}
46 cp %{S:5} %{_builddir}/rabbitmq-server-%{version}/README
47 make %{?_smp_mflags}
48
49 %install
50 rm -rf %{buildroot}
51
52 # Note that we pass /tmp to DOC_INSTALL_DIR here because we're using %doc
53 # to actually install rabbitmq.config.example, so this is just a fake/temp path
54 make install TARGET_DIR=%{_maindir} \
55              SBIN_DIR=%{buildroot}%{_rabbit_libdir}/bin \
56              MAN_DIR=%{buildroot}%{_mandir} \
57              DOC_INSTALL_DIR=/tmp
58
59 mkdir -p %{buildroot}%{_localstatedir}/lib/rabbitmq/mnesia
60 mkdir -p %{buildroot}%{_localstatedir}/log/rabbitmq
61 mkdir -p %{buildroot}%{_sysconfdir}/default
62
63 #Copy all necessary lib files etc.
64 install -p -D -m 0755 %{S:1} %{buildroot}%{_initrddir}/rabbitmq-server
65 install -p -D -m 0755 %{_rabbit_wrapper} %{buildroot}%{_sbindir}/rabbitmqctl
66 install -p -D -m 0755 %{_rabbit_wrapper} %{buildroot}%{_sbindir}/rabbitmq-server
67 install -p -D -m 0755 %{_rabbit_wrapper} %{buildroot}%{_sbindir}/rabbitmq-plugins
68 install -p -D -m 0755 %{_rabbit_server_ocf} %{buildroot}%{_exec_prefix}/lib/ocf/resource.d/rabbitmq/rabbitmq-server
69
70 install -p -D -m 0644 %{S:3} %{buildroot}%{_sysconfdir}/logrotate.d/rabbitmq-server
71 install -p -D -m 0644 %{S:6} %{buildroot}%{_sysconfdir}/default/rabbitmq-server
72
73 mkdir -p %{buildroot}%{_sysconfdir}/rabbitmq
74
75 rm %{_maindir}/LICENSE %{_maindir}/LICENSE-MPL-RabbitMQ %{_maindir}/INSTALL
76
77 #Build the list of files
78 echo '%defattr(-,root,root, -)' >%{_builddir}/%{name}.files
79 find %{buildroot} -path %{buildroot}%{_sysconfdir} -prune -o '!' -type d -printf "/%%P\n" >>%{_builddir}/%{name}.files
80
81 %pre
82
83 if [ $1 -gt 1 ]; then
84   # Upgrade - stop previous instance of rabbitmq-server init.d script
85   /sbin/service rabbitmq-server stop
86 fi
87
88 # create rabbitmq group
89 if ! getent group rabbitmq >/dev/null; then
90         groupadd -r rabbitmq
91 fi
92
93 # create rabbitmq user
94 if ! getent passwd rabbitmq >/dev/null; then
95         useradd -r -g rabbitmq -d %{_localstatedir}/lib/rabbitmq rabbitmq \
96             -c "RabbitMQ messaging server"
97 fi
98
99 %post
100 /sbin/chkconfig --add %{name}
101 if [ -f %{_sysconfdir}/rabbitmq/rabbitmq.conf ] && [ ! -f %{_sysconfdir}/rabbitmq/rabbitmq-env.conf ]; then
102     mv %{_sysconfdir}/rabbitmq/rabbitmq.conf %{_sysconfdir}/rabbitmq/rabbitmq-env.conf
103 fi
104
105 %preun
106 if [ $1 = 0 ]; then
107   #Complete uninstall
108   /sbin/service rabbitmq-server stop
109   /sbin/chkconfig --del rabbitmq-server
110   
111   # We do not remove /var/log and /var/lib directories
112   # Leave rabbitmq user and group
113 fi
114
115 # Clean out plugin activation state, both on uninstall and upgrade
116 rm -rf %{_plugins_state_dir}
117 for ext in rel script boot ; do
118     rm -f %{_rabbit_erllibdir}/ebin/rabbit.$ext
119 done
120
121 %files -f ../%{name}.files
122 %defattr(-,root,root,-)
123 %attr(0755, rabbitmq, rabbitmq) %dir %{_localstatedir}/lib/rabbitmq
124 %attr(0755, rabbitmq, rabbitmq) %dir %{_localstatedir}/log/rabbitmq
125 %dir %{_sysconfdir}/rabbitmq
126 %{_initrddir}/rabbitmq-server
127 %config(noreplace) %{_sysconfdir}/logrotate.d/rabbitmq-server
128 %config(noreplace) %{_sysconfdir}/default/rabbitmq-server
129 %doc LICENSE*
130 %doc README
131 %doc docs/rabbitmq.config.example
132
133 %clean
134 rm -rf %{buildroot}
135
136 %changelog
137 * Thu Jan 23 2014 emile@rabbitmq.com 3.2.3-1
138 - New Upstream Release
139
140 * Tue Dec 10 2013 emile@rabbitmq.com 3.2.2-1
141 - New Upstream Release
142
143 * Wed Oct 23 2013 emile@rabbitmq.com 3.2.0-1
144 - New Upstream Release
145
146 * Thu Aug 15 2013 simon@rabbitmq.com 3.1.5-1
147 - New Upstream Release
148
149 * Tue Jun 25 2013 tim@rabbitmq.com 3.1.3-1
150 - New Upstream Release
151
152 * Mon Jun 24 2013 tim@rabbitmq.com 3.1.2-1
153 - New Upstream Release
154
155 * Mon May 20 2013 tim@rabbitmq.com 3.1.1-1
156 - Test release
157
158 * Wed May 1 2013 simon@rabbitmq.com 3.1.0-1
159 - New Upstream Release
160
161 * Mon Dec 24 2012 Matthew Mosesohn <mmosesohn@mirantis.com> 2.8.7-2
162 - Added zip for buildreq
163
164 * Tue Dec 11 2012 simon@rabbitmq.com 3.0.1-1
165 - New Upstream Release
166
167 * Fri Nov 16 2012 simon@rabbitmq.com 3.0.0-1
168 - New Upstream Release
169
170 * Fri Dec 16 2011 steve@rabbitmq.com 2.7.1-1
171 - New Upstream Release
172
173 * Tue Nov 8 2011 steve@rabbitmq.com 2.7.0-1
174 - New Upstream Release
175
176 * Fri Sep 9 2011 tim@rabbitmq.com 2.6.1-1
177 - New Upstream Release
178
179 * Fri Aug 26 2011 tim@rabbitmq.com 2.6.0-1
180 - New Upstream Release
181
182 * Mon Jun 27 2011 simon@rabbitmq.com 2.5.1-1
183 - New Upstream Release
184
185 * Thu Jun 9 2011 jerryk@vmware.com 2.5.0-1
186 - New Upstream Release
187
188 * Thu Apr 7 2011 Alexandru Scvortov <alexandru@rabbitmq.com> 2.4.1-1
189 - New Upstream Release
190
191 * Tue Mar 22 2011 Alexandru Scvortov <alexandru@rabbitmq.com> 2.4.0-1
192 - New Upstream Release
193
194 * Thu Feb 3 2011 simon@rabbitmq.com 2.3.1-1
195 - New Upstream Release
196
197 * Tue Feb 1 2011 simon@rabbitmq.com 2.3.0-1
198 - New Upstream Release
199
200 * Mon Nov 29 2010 rob@rabbitmq.com 2.2.0-1
201 - New Upstream Release
202
203 * Tue Oct 19 2010 vlad@rabbitmq.com 2.1.1-1
204 - New Upstream Release
205
206 * Tue Sep 14 2010 marek@rabbitmq.com 2.1.0-1
207 - New Upstream Release
208
209 * Mon Aug 23 2010 mikeb@rabbitmq.com 2.0.0-1
210 - New Upstream Release
211
212 * Wed Jul 14 2010 Emile Joubert <emile@rabbitmq.com> 1.8.1-1
213 - New Upstream Release
214
215 * Tue Jun 15 2010 Matthew Sackman <matthew@rabbitmq.com> 1.8.0-1
216 - New Upstream Release
217
218 * Mon Feb 15 2010 Matthew Sackman <matthew@lshift.net> 1.7.2-1
219 - New Upstream Release
220
221 * Fri Jan 22 2010 Matthew Sackman <matthew@lshift.net> 1.7.1-1
222 - New Upstream Release
223
224 * Mon Oct 5 2009 David Wragg <dpw@lshift.net> 1.7.0-1
225 - New upstream release
226
227 * Wed Jun 17 2009 Matthias Radestock <matthias@lshift.net> 1.6.0-1
228 - New upstream release
229
230 * Tue May 19 2009 Matthias Radestock <matthias@lshift.net> 1.5.5-1
231 - Maintenance release for the 1.5.x series
232
233 * Mon Apr 6 2009 Matthias Radestock <matthias@lshift.net> 1.5.4-1
234 - Maintenance release for the 1.5.x series
235
236 * Tue Feb 24 2009 Tony Garnock-Jones <tonyg@lshift.net> 1.5.3-1
237 - Maintenance release for the 1.5.x series
238
239 * Mon Feb 23 2009 Tony Garnock-Jones <tonyg@lshift.net> 1.5.2-1
240 - Maintenance release for the 1.5.x series
241
242 * Mon Jan 19 2009 Ben Hood <0x6e6562@gmail.com> 1.5.1-1
243 - Maintenance release for the 1.5.x series
244
245 * Wed Dec 17 2008 Matthias Radestock <matthias@lshift.net> 1.5.0-1
246 - New upstream release
247
248 * Thu Jul 24 2008 Tony Garnock-Jones <tonyg@lshift.net> 1.4.0-1
249 - New upstream release
250
251 * Mon Mar 3 2008 Adrien Pierard <adrian@lshift.net> 1.3.0-1
252 - New upstream release
253
254 * Wed Sep 26 2007 Simon MacMullen <simon@lshift.net> 1.2.0-1
255 - New upstream release
256
257 * Wed Aug 29 2007 Simon MacMullen <simon@lshift.net> 1.1.1-1
258 - New upstream release
259
260 * Mon Jul 30 2007 Simon MacMullen <simon@lshift.net> 1.1.0-1.alpha
261 - New upstream release
262
263 * Tue Jun 12 2007 Hubert Plociniczak <hubert@lshift.net> 1.0.0-1.20070607
264 - Building from source tarball, added starting script, stopping
265
266 * Mon May 21 2007 Hubert Plociniczak <hubert@lshift.net> 1.0.0-1.alpha
267 - Initial build of server library of RabbitMQ package