b433e1dc53f6a6162a28639ca9fb9dbafec76432
[openstack-build/ceilometer-build.git] / rpm / SPECS / openstack-ceilometer.spec
1 %global _without_doc 1
2 %global with_doc %{!?_without_doc:1}%{?_without_doc:0}
3 %global pypi_name ceilometer
4
5 Name:             openstack-ceilometer
6 Version:          2014.1.1
7 Release:          2%{?dist}
8 Summary:          OpenStack measurement collection service
9
10 Group:            Applications/System
11 License:          ASL 2.0
12 URL:              https://wiki.openstack.org/wiki/Ceilometer
13 Source0:          http://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
14 Source1:          %{pypi_name}-dist.conf
15 Source2:          %{pypi_name}.logrotate
16
17 Source10:         %{name}-api.init
18 Source100:        %{name}-api.upstart
19 Source11:         %{name}-collector.init
20 Source110:        %{name}-collector.upstart
21 Source12:         %{name}-compute.init
22 Source120:        %{name}-compute.upstart
23 Source13:         %{name}-central.init
24 Source130:        %{name}-central.upstart
25 Source14:         %{name}-alarm-notifier.init
26 Source140:        %{name}-alarm-notifier.upstart
27 Source15:         %{name}-alarm-evaluator.init
28 Source150:        %{name}-alarm-evaluator.upstart
29 Source16:         %{name}-notification.init
30 Source160:        %{name}-notification.upstart
31
32 # This is EL6 specific and not upstream
33 Patch100:         openstack-ceilometer-newdeps.patch
34
35 BuildArch:        noarch
36 BuildRequires:    intltool
37 BuildRequires:    python-sphinx10
38 BuildRequires:    python-setuptools
39 BuildRequires:    python-pbr
40 BuildRequires:    python-d2to1
41 BuildRequires:    python2-devel
42
43 BuildRequires:    openstack-utils
44
45 # These are required to build due to the requirements check added
46 BuildRequires:    python-sqlalchemy
47 BuildRequires:    python-webob1.2
48
49
50 %description
51 OpenStack ceilometer provides services to measure and
52 collect metrics from OpenStack components.
53
54
55 %package -n       python-ceilometer
56 Summary:          OpenStack ceilometer python libraries
57 Group:            Applications/System
58
59 Requires:         python-qpid
60 Requires:         python-kombu
61
62 Requires:         python-babel
63 Requires:         python-eventlet
64 Requires:         python-greenlet
65 Requires:         python-iso8601
66 Requires:         python-lxml
67 Requires:         python-anyjson
68 Requires:         python-jsonpath-rw
69 Requires:         python-stevedore >= 0.14
70 Requires:         python-msgpack
71 Requires:         python-six >= 1.6
72 Requires:         PyYAML
73
74 Requires:         python-argparse
75 Requires:         python-jsonschema
76 Requires:         python-netaddr
77 Requires:         python-requests
78
79 Requires:         python-sqlalchemy
80 Requires:         python-alembic
81 Requires:         python-migrate
82
83 Requires:         python-webob >= 1.2.3
84
85 Requires:         python-oslo-config >= 1:1.2.0
86
87 Requires:         pysnmp
88 Requires:         pytz
89 Requires:         python-croniter
90
91 # These were only added as global dependencies
92 # at the end of the Icehouse cycle with the change
93 # to cli.py referenced from in http://pad.lv/1317210
94 Requires:         python-pymongo
95 Requires:         python-flask
96 Requires:         python-pecan >= 0.4.5
97 Requires:         python-wsme >= 0.6
98 Requires:         python-novaclient
99 Requires:         python-keystoneclient
100 Requires:         python-glanceclient
101 Requires:         python-swiftclient
102 Requires:         python-ceilometerclient
103 Requires:         libvirt-python
104
105 %description -n   python-ceilometer
106 OpenStack ceilometer provides services to measure and
107 collect metrics from OpenStack components.
108
109 This package contains the ceilometer python library.
110
111
112 %package common
113 Summary:          Components common to all OpenStack ceilometer services
114 Group:            Applications/System
115
116 Requires:         python-ceilometer = %{version}-%{release}
117 Requires:         openstack-utils
118
119 Requires(post):   chkconfig
120 Requires(postun): initscripts
121 Requires(preun):  chkconfig
122 Requires(pre):    shadow-utils
123
124
125
126 %description common
127 OpenStack ceilometer provides services to measure and
128 collect metrics from OpenStack components.
129
130 This package contains components common to all OpenStack
131 ceilometer services.
132
133
134 %package compute
135 Summary:          OpenStack ceilometer compute agent
136 Group:            Applications/System
137
138 Requires:         %{name}-common = %{version}-%{release}
139
140 Requires:         python-novaclient
141 Requires:         python-keystoneclient
142 Requires:         libvirt-python
143
144 %description compute
145 OpenStack ceilometer provides services to measure and
146 collect metrics from OpenStack components.
147
148 This package contains the ceilometer agent for
149 running on OpenStack compute nodes.
150
151
152 %package central
153 Summary:          OpenStack ceilometer central agent
154 Group:            Applications/System
155
156 Requires:         %{name}-common = %{version}-%{release}
157
158 Requires:         python-novaclient
159 Requires:         python-keystoneclient
160 Requires:         python-glanceclient
161 Requires:         python-swiftclient
162
163 %description central
164 OpenStack ceilometer provides services to measure and
165 collect metrics from OpenStack components.
166
167 This package contains the central ceilometer agent.
168
169
170 %package collector
171 Summary:          OpenStack ceilometer collector
172 Group:            Applications/System
173
174 Requires:         %{name}-common = %{version}-%{release}
175
176 # For compat with older provisioning tools.
177 # Remove when all reference the notification package explicitly
178 Requires:         %{name}-notification
179
180 Requires:         python-pymongo
181
182 %description collector
183 OpenStack ceilometer provides services to measure and
184 collect metrics from OpenStack components.
185
186 This package contains the ceilometer collector service
187 which collects metrics from the various agents.
188
189
190 %package notification
191 Summary:          OpenStack ceilometer notification agent
192 Group:            Applications/System
193
194 Requires:         %{name}-common = %{version}-%{release}
195
196 %description notification
197 OpenStack ceilometer provides services to measure and
198 collect metrics from OpenStack components.
199
200 This package contains the ceilometer notification agent
201 which pushes metrics to the collector service from the
202 various OpenStack services.
203
204
205 %package api
206 Summary:          OpenStack ceilometer API service
207 Group:            Applications/System
208
209 Requires:         %{name}-common = %{version}-%{release}
210
211 Requires:         python-pymongo
212 Requires:         python-flask
213 Requires:         python-pecan >= 0.4.5
214 Requires:         python-wsme >= 0.6
215
216 %description api
217 OpenStack ceilometer provides services to measure and
218 collect metrics from OpenStack components.
219
220 This package contains the ceilometer API service.
221
222
223 %package alarm
224 Summary:          OpenStack ceilometer alarm services
225 Group:            Applications/System
226
227 Requires:         %{name}-common = %{version}-%{release}
228 Requires:         python-ceilometerclient
229
230 %description alarm
231 OpenStack ceilometer provides services to measure and
232 collect metrics from OpenStack components.
233
234 This package contains the ceilometer alarm notification
235 and evaluation services.
236
237
238 %if 0%{?with_doc}
239 %package doc
240 Summary:          Documentation for OpenStack ceilometer
241 Group:            Documentation
242
243 # Required to build module documents
244 BuildRequires:    python-eventlet
245 BuildRequires:    python-sqlalchemy
246 BuildRequires:    python-webob
247 # while not strictly required, quiets the build down when building docs.
248 BuildRequires:    python-migrate, python-iso8601
249
250 %description      doc
251 OpenStack ceilometer provides services to measure and
252 collect metrics from OpenStack components.
253
254 This package contains documentation files for ceilometer.
255 %endif
256
257 %prep
258 %setup -q -n ceilometer-%{version}
259
260 # Apply EL6 patch
261 %patch100 -p1
262
263 find . \( -name .gitignore -o -name .placeholder \) -delete
264
265 find ceilometer -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} +
266
267 # TODO: Have the following handle multi line entries
268 sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py
269
270 # Remove the requirements file so that pbr hooks don't add it
271 # to distutils requires_dist config
272 rm -rf {test-,}requirements.txt tools/{pip,test}-requires
273
274 # Programmatically update defaults in sample config
275 # which is installed at /etc/ceilometer/ceilometer.conf
276 # TODO: Make this more robust
277 # Note it only edits the first occurance, so assumes a section ordering in sample
278 # and also doesn't support multi-valued variables.
279 while read name eq value; do
280   test "$name" && test "$value" || continue
281   sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/ceilometer/ceilometer.conf.sample
282 done < %{SOURCE1}
283
284 %build
285 %{__python} setup.py build
286
287 %install
288 %{__python} setup.py install -O1 --skip-build --root %{buildroot}
289
290 # docs generation requires everything to be installed first
291 export PYTHONPATH="$( pwd ):$PYTHONPATH"
292
293 pushd doc
294
295 %if 0%{?with_doc}
296 SPHINX_DEBUG=1 sphinx-1.0-build -b html source build/html
297 # Fix hidden-file-or-dir warnings
298 rm -fr build/html/.doctrees build/html/.buildinfo
299 %endif
300
301 popd
302
303 # Setup directories
304 install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer
305 install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer/tmp
306 install -d -m 755 %{buildroot}%{_localstatedir}/log/ceilometer
307
308 # Install config files
309 install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer
310 install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/ceilometer/ceilometer-dist.conf
311 install -p -D -m 640 etc/ceilometer/ceilometer.conf.sample %{buildroot}%{_sysconfdir}/ceilometer/ceilometer.conf
312 install -p -D -m 640 etc/ceilometer/policy.json %{buildroot}%{_sysconfdir}/ceilometer/policy.json
313 install -p -D -m 640 etc/ceilometer/sources.json %{buildroot}%{_sysconfdir}/ceilometer/sources.json
314 install -p -D -m 640 etc/ceilometer/pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/pipeline.yaml
315
316 # Install initscripts for services
317 install -p -D -m 755 %{SOURCE10} %{buildroot}%{_initrddir}/%{name}-api
318 install -p -D -m 755 %{SOURCE11} %{buildroot}%{_initrddir}/%{name}-collector
319 install -p -D -m 755 %{SOURCE12} %{buildroot}%{_initrddir}/%{name}-compute
320 install -p -D -m 755 %{SOURCE13} %{buildroot}%{_initrddir}/%{name}-central
321 install -p -D -m 755 %{SOURCE14} %{buildroot}%{_initrddir}/%{name}-alarm-notifier
322 install -p -D -m 755 %{SOURCE15} %{buildroot}%{_initrddir}/%{name}-alarm-evaluator
323 install -p -D -m 755 %{SOURCE16} %{buildroot}%{_initrddir}/%{name}-notification
324
325 # Install upstart jobs examples
326 install -d -m 755 %{buildroot}%{_datadir}/ceilometer
327 install -p -m 644 %{SOURCE100} %{buildroot}%{_datadir}/ceilometer/
328 install -p -m 644 %{SOURCE110} %{buildroot}%{_datadir}/ceilometer/
329 install -p -m 644 %{SOURCE120} %{buildroot}%{_datadir}/ceilometer/
330 install -p -m 644 %{SOURCE130} %{buildroot}%{_datadir}/ceilometer/
331 install -p -m 644 %{SOURCE140} %{buildroot}%{_datadir}/ceilometer/
332 install -p -m 644 %{SOURCE150} %{buildroot}%{_datadir}/ceilometer/
333 install -p -m 644 %{SOURCE160} %{buildroot}%{_datadir}/ceilometer/
334
335 # Install logrotate
336 install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
337
338 # Install pid directory
339 install -d -m 755 %{buildroot}%{_localstatedir}/run/ceilometer
340
341 # Remove unneeded in production stuff
342 rm -f %{buildroot}%{_bindir}/ceilometer-debug
343 rm -fr %{buildroot}%{python_sitelib}/tests/
344 rm -fr %{buildroot}%{python_sitelib}/run_tests.*
345 rm -f %{buildroot}/usr/share/doc/ceilometer/README*
346 rm -f %{buildroot}/%{python_sitelib}/ceilometer/api/v1/static/LICENSE.*
347
348
349 %pre common
350 getent group ceilometer >/dev/null || groupadd -r ceilometer --gid 166
351 if ! getent passwd ceilometer >/dev/null; then
352   # Id reservation request: https://bugzilla.redhat.com/923891
353   useradd -u 166 -r -g ceilometer -G ceilometer,nobody -d %{_sharedstatedir}/ceilometer -s /sbin/nologin -c "OpenStack ceilometer Daemons" ceilometer
354 fi
355 exit 0
356
357 %post compute
358 if [ $1 -eq 1 ] ; then
359     # Initial installation
360     /sbin/chkconfig --add %{name}-compute
361 fi
362
363 %post collector
364 if [ $1 -eq 1 ] ; then
365     # Initial installation
366     /sbin/chkconfig --add %{name}-collector
367 fi
368
369 %post notification
370 if [ $1 -eq 1 ] ; then
371     # Initial installation
372     /sbin/chkconfig --add %{name}-notification
373 fi
374
375 %post api
376 if [ $1 -eq 1 ] ; then
377     # Initial installation
378     /sbin/chkconfig --add %{name}-api
379 fi
380
381 %post central
382 if [ $1 -eq 1 ] ; then
383     # Initial installation
384     /sbin/chkconfig --add %{name}-central
385 fi
386
387 %post alarm
388 if [ $1 -eq 1 ] ; then
389     # Initial installation
390     for svc in alarm-notifier alarm-evaluator; do
391         /sbin/chkconfig --add %{name}-${svc}
392     done
393 fi
394
395 %preun compute
396 if [ $1 -eq 0 ] ; then
397     for svc in compute; do
398         /sbin/service %{name}-${svc} stop > /dev/null 2>&1
399         /sbin/chkconfig --del %{name}-${svc}
400     done
401 fi
402
403 %preun collector
404 if [ $1 -eq 0 ] ; then
405     for svc in collector; do
406         /sbin/service %{name}-${svc} stop > /dev/null 2>&1
407         /sbin/chkconfig --del %{name}-${svc}
408     done
409 fi
410
411 %preun notification
412 if [ $1 -eq 0 ] ; then
413     for svc in notification; do
414         /sbin/service %{name}-${svc} stop > /dev/null 2>&1
415         /sbin/chkconfig --del %{name}-${svc}
416     done
417 fi
418
419 %preun api
420 if [ $1 -eq 0 ] ; then
421     for svc in api; do
422         /sbin/service %{name}-${svc} stop > /dev/null 2>&1
423         /sbin/chkconfig --del %{name}-${svc}
424     done
425 fi
426
427 %preun central
428 if [ $1 -eq 0 ] ; then
429     for svc in central; do
430         /sbin/service %{name}-${svc} stop > /dev/null 2>&1
431         /sbin/chkconfig --del %{name}-${svc}
432     done
433 fi
434
435 %preun alarm
436 if [ $1 -eq 0 ] ; then
437     for svc in alarm-notifier alarm-evaluator; do
438         /sbin/service %{name}-${svc} stop > /dev/null 2>&1
439         /sbin/chkconfig --del %{name}-${svc}
440     done
441 fi
442
443 %postun compute
444 if [ $1 -ge 1 ] ; then
445     # Package upgrade, not uninstall
446     for svc in compute; do
447         /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
448     done
449 fi
450
451 %postun collector
452 if [ $1 -ge 1 ] ; then
453     # Package upgrade, not uninstall
454     for svc in collector; do
455         /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
456     done
457 fi
458
459 %postun notification
460 if [ $1 -ge 1 ] ; then
461     # Package upgrade, not uninstall
462     for svc in notification; do
463         /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
464     done
465 fi
466
467 %postun api
468 if [ $1 -ge 1 ] ; then
469     # Package upgrade, not uninstall
470     for svc in api; do
471         /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
472     done
473 fi
474
475 %postun central
476 if [ $1 -ge 1 ] ; then
477     # Package upgrade, not uninstall
478     for svc in central; do
479         /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
480     done
481 fi
482
483 %postun alarm
484 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
485 if [ $1 -ge 1 ] ; then
486     # Package upgrade, not uninstall
487     for svc in alarm-notifier alarm-evaluator; do
488         /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || :
489     done
490 fi
491
492
493 %files common
494 %doc LICENSE
495 %dir %{_sysconfdir}/ceilometer
496 %attr(-, root, ceilometer) %{_datadir}/ceilometer/ceilometer-dist.conf
497 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/ceilometer.conf
498 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/policy.json
499 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/sources.json
500 %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/pipeline.yaml
501 %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
502
503 %dir %attr(0755, ceilometer, root) %{_localstatedir}/log/ceilometer
504 %dir %attr(0755, ceilometer, root) %{_localstatedir}/run/ceilometer
505
506 %{_bindir}/ceilometer-dbsync
507 %{_bindir}/ceilometer-expirer
508 %{_bindir}/ceilometer-send-sample
509
510
511 %defattr(-, ceilometer, ceilometer, -)
512 %dir %{_sharedstatedir}/ceilometer
513 %dir %{_sharedstatedir}/ceilometer/tmp
514
515
516 %files -n python-ceilometer
517 %{python_sitelib}/ceilometer
518 %{python_sitelib}/ceilometer-%{version}*.egg-info
519
520
521 %if 0%{?with_doc}
522 %files doc
523 %doc doc/build/html
524 %endif
525
526
527 %files compute
528 %{_bindir}/ceilometer-agent-compute
529 %{_initrddir}/%{name}-compute
530 %{_datarootdir}/ceilometer/%{name}-compute.upstart
531
532
533 %files collector
534 %{_bindir}/ceilometer-collector*
535 %{_initrddir}/%{name}-collector
536 %{_datarootdir}/ceilometer/%{name}-collector.upstart
537
538
539 %files notification
540 %{_bindir}/ceilometer-agent-notification
541 %{_initrddir}/%{name}-notification
542 %{_datarootdir}/ceilometer/%{name}-notification.upstart
543
544
545 %files api
546 %doc ceilometer/api/v1/static/LICENSE.*
547 %{_bindir}/ceilometer-api
548 %{_initrddir}/%{name}-api
549 %{_datarootdir}/ceilometer/%{name}-api.upstart
550
551
552 %files central
553 %{_bindir}/ceilometer-agent-central
554 %{_initrddir}/%{name}-central
555 %{_datarootdir}/ceilometer/%{name}-central.upstart
556
557
558 %files alarm
559 %{_bindir}/ceilometer-alarm-notifier
560 %{_bindir}/ceilometer-alarm-evaluator
561 %{_initrddir}/%{name}-alarm-notifier
562 %{_datarootdir}/ceilometer/%{name}-alarm-notifier.upstart
563 %{_initrddir}/%{name}-alarm-evaluator
564 %{_datarootdir}/ceilometer/%{name}-alarm-evaluator.upstart
565
566
567 %changelog
568 * Wed Jun 11 2014 Steve Linabery <slinaber@redhat.com> - 2014.1.1-2
569 - Update to upstream 2014.1.1
570 - fix message routing with newer QPID (rhbz#1103800)
571
572 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2014.1-3
573 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
574
575 * Wed May 07 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-2
576 - Avoid dependency issues with distributed installs (#1095414)
577
578 * Thu Apr 17 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-1
579 - Update to Icehouse release
580
581 * Fri Apr 11 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.7.rc2
582 - Update to upstream 2014.1.rc2
583 - Remove qpid as default rpc backend
584 - Split out openstack-ceilometer-notification subpackage from collector
585
586 * Mon Mar 31 2014 Pádraig Brady <P@draigBrady.com> 2014.1-0.6.rc1
587 - Update to upstream 2014.1.rc1
588
589 * Fri Mar 14 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.5.b3
590 - Update to Icehouse milestone 3
591
592 * Tue Feb 04 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.4.b2
593 - Fix missing dependency on python-babel
594
595 * Mon Jan 27 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.3.b2
596 - Update to Icehouse milestone 2
597
598 * Mon Jan 06 2014 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.2.b1
599 - Set python-six min version to ensure updated
600
601 * Mon Dec 23 2013 Pádraig Brady <pbrady@redhat.com> - 2014.1-0.1.b1
602 - Update to Icehouse milestone 1
603
604 * Tue Dec 17 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2.1-1
605 - Update to Havana stable release 2013.2.1
606
607 * Thu Oct 17 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-1
608 - Update to Havana release
609
610 * Tue Oct 15 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.12.rc2
611 - Update to Havana rc2
612 - openstack-ceilometer-alarm now depends on python-ceilometerclient
613
614 * Thu Oct 03 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.12.rc1
615 - Update to Havana rc1
616 - Separate out the new alarm services to the 'alarm' subpackage
617
618 * Fri Sep 13 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.10.b3
619 - Depend on python-oslo-config >= 1:1.2.0 so it upgraded automatically
620
621 * Mon Sep 10 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.8.b3
622 - Depend on python-pymongo rather than pymongo to avoid a puppet bug
623
624 * Mon Sep 9 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.7.b3
625 - Depend on python-alembic
626
627 * Mon Sep 9 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.6.b3
628 - Distribute dist defaults in ceilometer-dist.conf separate to user ceilometer.conf
629
630 * Mon Sep 9 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.5.b3
631 - Update to Havana milestone 3
632
633 * Tue Aug 27 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.4.b1
634 - Avoid python runtime dependency management
635
636 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2013.2-0.3.b1
637 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
638
639 * Thu Jun  6 2013 Pádraig Brady <P@draigBrady.com> - 2013.2-0.2.b1
640 - Fix uninstall for openstack-ceilometer-central
641
642 * Fri May 31 2013 Pádraig Brady <P@draigBrady.com> - 2013.2-0.1.b1
643 - Havana milestone 1
644
645 * Mon Apr  8 2013 Pádraig Brady <P@draigBrady.com> - 2013.1-2
646 - Grizzly release
647
648 * Tue Mar 26 2013 Pádraig Brady <P@draigBrady.com> - 2013.1-0.5.g3
649 - Initial package