X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=rpm%2FSPECS%2Fopenstack-ceilometer.spec;h=89f23cf70a946ac9377104e0f78bc4e43ac86e63;hb=9ed9a8077046102d4b1ac5edc630b266fe7063d8;hp=742c5d708fd99a5aa1b1d3b185491937781882a9;hpb=e5656b0a3d68cc084ee7488746312fa8470b8fdf;p=openstack-build%2Fceilometer-build.git diff --git a/rpm/SPECS/openstack-ceilometer.spec b/rpm/SPECS/openstack-ceilometer.spec index 742c5d7..89f23cf 100644 --- a/rpm/SPECS/openstack-ceilometer.spec +++ b/rpm/SPECS/openstack-ceilometer.spec @@ -3,17 +3,19 @@ %global pypi_name ceilometer Name: openstack-ceilometer -Version: 2013.1.3 -Release: 1%{?dist} +Version: 2015.1.0 +Release: 2%{?dist} Summary: OpenStack measurement collection service Group: Applications/System License: ASL 2.0 URL: https://wiki.openstack.org/wiki/Ceilometer Source0: http://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{version}.tar.gz -Source1: %{pypi_name}.conf +Source1: %{pypi_name}-dist.conf Source2: %{pypi_name}.logrotate +Source3: ceilometer-rootwrap-sudoers +%if 0%{?rhel} && 0%{?rhel} <= 6 Source10: %{name}-api.init Source100: %{name}-api.upstart Source11: %{name}-collector.init @@ -22,28 +24,54 @@ Source12: %{name}-compute.init Source120: %{name}-compute.upstart Source13: %{name}-central.init Source130: %{name}-central.upstart +Source14: %{name}-alarm-notifier.init +Source140: %{name}-alarm-notifier.upstart +Source15: %{name}-alarm-evaluator.init +Source150: %{name}-alarm-evaluator.upstart +Source16: %{name}-notification.init +Source160: %{name}-notification.upstart +Source17: %{name}-ipmi.init +Source170: %{name}-ipmi.upstart +Source18: %{name}-polling.init +Source180: %{name}-polling.upstart +%else +Source10: %{name}-api.service +Source11: %{name}-collector.service +Source12: %{name}-compute.service +Source13: %{name}-central.service +Source14: %{name}-alarm-notifier.service +Source15: %{name}-alarm-evaluator.service +Source16: %{name}-notification.service +Source17: %{name}-ipmi.service +Source18: %{name}-polling.service +%endif # -# patches_base=2013.1.3 +# patches_base=2014.1.1 # -Patch0001: 0001-Ensure-we-don-t-access-the-net-when-building-docs.patch -Patch0002: 0002-avoid-code-path-causing-qpid-exchange-leaks.patch - -# This is EL6 specific and not upstream -Patch100: openstack-ceilometer-newdeps.patch BuildArch: noarch BuildRequires: intltool BuildRequires: python-sphinx10 BuildRequires: python-setuptools +BuildRequires: python-pbr >= 0.10 +BuildRequires: python-d2to1 BuildRequires: python2-devel - BuildRequires: openstack-utils +# These are required to generate ceilometer configuration file +BuildRequires: python-tox +BuildRequires: python-oslo-db >= 1.7.0 +BuildRequires: python-oslo-messaging >= 1.8.0 +BuildRequires: python-keystonemiddleware >= 1.5.0 + # These are required to build due to the requirements check added -BuildRequires: python-sqlalchemy0.7 -BuildRequires: python-webob1.2 +BuildRequires: python-sqlalchemy >= 0.9.7 +BuildRequires: python-webob >= 1.2.3 +%if ! (0%{?rhel} && 0%{?rhel} <= 6) +BuildRequires: systemd-units +%endif %description OpenStack ceilometer provides services to measure and @@ -54,23 +82,53 @@ collect metrics from OpenStack components. Summary: OpenStack ceilometer python libraries Group: Applications/System +Requires: python-alembic >= 0.7.2 +Requires: python-ceilometerclient >= 1.0.13 +Requires: python-croniter >= 0.3.4 +Requires: python-eventlet >= 0.16.1 +Requires: python-flask >= 0.10 +Requires: python-glanceclient >= 1:0.15.0 +Requires: python-iso8601 >= 0.1.9 +Requires: python-jsonpath-rw >= 1.2.0 +Requires: python-jsonschema >= 2.0.0 +Requires: python-kafka >= 0.9.2 +Requires: python-keystoneclient >= 1.1.0 +Requires: python-keystonemiddleware >= 1.5.0 +Requires: python-lxml >= 2.3 +Requires: python-migrate >= 0.9.5 +Requires: python-msgpack >= 0.4.0 +Requires: python-neutronclient >= 2.3.11 +Requires: python-novaclient >= 1:2.22.0 +Requires: python-oslo-concurrency >= 1.8.0 +Requires: python-oslo-config >= 1:1.9.3 +Requires: python-oslo-context >= 0.2.0 +Requires: python-oslo-db >= 1.7.0 +Requires: python-oslo-i18n >= 1.5.0 +Requires: python-oslo-messaging >= 1.8.0 +Requires: python-oslo-middleware >= 1.0.0 +Requires: python-oslo-policy >= 0.3.1 +Requires: python-oslo-rootwrap >= 1.6.0 +Requires: python-oslo-serialization >= 1.4.0 +Requires: python-oslo.utils >= 1.4.0 +Requires: python-paste-deploy >= 1.5.0 +Requires: python-pbr >= 0.10 +Requires: python-pecan >= 0.8.0 +Requires: python-posix_ipc +Requires: python-pymongo >= 2.6.3 +Requires: python-pysnmp >= 4.2.1 +Requires: pytz >= 2013.6 Requires: python-qpid -Requires: python-kombu -Requires: python-amqplib - -Requires: python-eventlet -Requires: python-greenlet -Requires: python-iso8601 -Requires: python-lxml -Requires: python-anyjson -Requires: python-stevedore - -Requires: python-sqlalchemy0.7 -Requires: python-migrate - -Requires: python-webob >= 1.2 -Requires: python-oslo-config -Requires: PyYAML +Requires: python-requests >= 2.2.0 +Requires: python-retrying >= 1.2.3 +Requires: python-six >= 1.9.0 +Requires: python-sqlalchemy >= 0.9.7 +Requires: python-stevedore >= 1.3.0 +Requires: python-swiftclient >= 2.2.0 +Requires: python-tooz >= 0.13.1 +Requires: python-werkzeug >= 0.7 +Requires: python-webob >= 1.2.3 +Requires: python-wsme >= 0.8 +Requires: PyYAML >= 3.1.0 %description -n python-ceilometer OpenStack ceilometer provides services to measure and @@ -86,13 +144,17 @@ Group: Applications/System Requires: python-ceilometer = %{version}-%{release} Requires: openstack-utils +%if 0%{?rhel} && 0%{?rhel} <= 6 Requires(post): chkconfig Requires(postun): initscripts Requires(preun): chkconfig +%else +Requires(post): systemd-units +Requires(preun): systemd-units +Requires(postun): systemd-units +%endif Requires(pre): shadow-utils - - %description common OpenStack ceilometer provides services to measure and collect metrics from OpenStack components. @@ -107,9 +169,9 @@ Group: Applications/System Requires: %{name}-common = %{version}-%{release} -Requires: python-novaclient -Requires: python-keystoneclient Requires: libvirt-python +Requires: python-keystoneclient >= 1.1.0 +Requires: python-novaclient >= 2.22.0 %description compute OpenStack ceilometer provides services to measure and @@ -125,10 +187,10 @@ Group: Applications/System Requires: %{name}-common = %{version}-%{release} -Requires: python-novaclient -Requires: python-keystoneclient -Requires: python-glanceclient -Requires: python-swiftclient +Requires: python-glanceclient >= 0.15.0 +Requires: python-keystoneclient >= 1.1.0 +Requires: python-novaclient >= 2.22.0 +Requires: python-swiftclient >= 2.2.0 %description central OpenStack ceilometer provides services to measure and @@ -138,18 +200,37 @@ This package contains the central ceilometer agent. %package collector -Summary: OpenStack ceilometer collector agent +Summary: OpenStack ceilometer collector Group: Applications/System Requires: %{name}-common = %{version}-%{release} -Requires: pymongo +# For compat with older provisioning tools. +# Remove when all reference the notification package explicitly +Requires: %{name}-notification = %{version}-%{release} +Requires: python-pymongo >= 2.6.3 %description collector OpenStack ceilometer provides services to measure and collect metrics from OpenStack components. -This package contains the ceilometer collector agent. +This package contains the ceilometer collector service +which collects metrics from the various agents. + + +%package notification +Summary: OpenStack ceilometer notification agent +Group: Applications/System + +Requires: %{name}-common = %{version}-%{release} + +%description notification +OpenStack ceilometer provides services to measure and +collect metrics from OpenStack components. + +This package contains the ceilometer notification agent +which pushes metrics to the collector service from the +various OpenStack services. %package api @@ -158,10 +239,13 @@ Group: Applications/System Requires: %{name}-common = %{version}-%{release} -Requires: pymongo -Requires: python-flask -Requires: python-pecan -Requires: python-wsme +Requires: python-flask >= 0.10 +Requires: python-keystonemiddleware >= 1.5.0 +Requires: python-oslo-db >= 1.7.0 +Requires: python-paste-deploy >= 1.5.0 +Requires: python-pecan >= 0.8.0 +Requires: python-pymongo >= 2.6.3 +Requires: python-wsme >= 0.6 %description api OpenStack ceilometer provides services to measure and @@ -170,17 +254,78 @@ collect metrics from OpenStack components. This package contains the ceilometer API service. +%package alarm +Summary: OpenStack ceilometer alarm services +Group: Applications/System + +Requires: %{name}-common = %{version}-%{release} +Requires: python-ceilometerclient >= 1.0.13 + +%description alarm +OpenStack ceilometer provides services to measure and +collect metrics from OpenStack components. + +This package contains the ceilometer alarm notification +and evaluation services. + + +%package ipmi +Summary: OpenStack ceilometer ipmi agent +Group: Applications/System + +Requires: %{name}-common = %{version}-%{release} + +Requires: ipmitool +Requires: python-keystoneclient >= 1.1.0 +Requires: python-neutronclient >= 2.3.11 +Requires: python-novaclient >= 2.22.0 +Requires: python-oslo-rootwrap >= 1.6.0 +Requires: python-tooz >= 0.13.1 + +%description ipmi +OpenStack ceilometer provides services to measure and +collect metrics from OpenStack components. + +This package contains the ipmi agent to be run on OpenStack +nodes from which IPMI sensor data is to be collected directly, +by-passing Ironic's management of baremetal. + + +%package polling +Summary: OpenStack ceilometer polling agent +Group: Applications/System + +Requires: %{name}-common = %{version}-%{release} + +Requires: libvirt-python +Requires: python-glanceclient >= 0.15.0 +Requires: python-keystoneclient >= 1.1.0 +Requires: python-novaclient >= 2.22.0 +Requires: python-swiftclient >= 2.2.0 + +%description polling +Ceilometer aims to deliver a unique point of contact for billing systems to +aquire all counters they need to establish customer billing, across all +current and future OpenStack components. The delivery of counters must +be tracable and auditable, the counters must be easily extensible to support +new projects, and agents doing data collections should be +independent of the overall system. + +This package contains the polling service. + + %if 0%{?with_doc} %package doc Summary: Documentation for OpenStack ceilometer Group: Documentation # Required to build module documents -BuildRequires: python-eventlet -BuildRequires: python-sqlalchemy0.7 -BuildRequires: python-webob +BuildRequires: python-eventlet >= 0.16.1 +BuildRequires: python-sqlalchemy >= 0.9.7 +BuildRequires: python-webob >= 1.2.3 # while not strictly required, quiets the build down when building docs. -BuildRequires: python-migrate, python-iso8601 +BuildRequires: python-migrate >= 0.9.5 +BuildRequires: python-iso8601 >= 0.1.9 %description doc OpenStack ceilometer provides services to measure and @@ -192,12 +337,6 @@ This package contains documentation files for ceilometer. %prep %setup -q -n ceilometer-%{version} -%patch0001 -p1 -%patch0002 -p1 - -# Apply EL6 patch -%patch100 -p1 - find . \( -name .gitignore -o -name .placeholder \) -delete find ceilometer -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + @@ -205,6 +344,10 @@ find ceilometer -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + # TODO: Have the following handle multi line entries sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py +# Remove the requirements file so that pbr hooks don't add it +# to distutils requires_dist config +rm -rf {test-,}requirements.txt tools/{pip,test}-requires + %build %{__python} setup.py build @@ -224,23 +367,43 @@ rm -fr build/html/.doctrees build/html/.buildinfo popd +# Genenrate ceilometer.conf.sample +oslo-config-generator --output-file etc/ceilometer/ceilometer.conf.sample \ + --namespace ceilometer \ + --namespace oslo.db \ + --namespace oslo.messaging \ + --namespace keystonemiddleware.auth_token + # Setup directories install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer/tmp -install -d -m 755 %{buildroot}%{_localstatedir}/log/ceilometer +install -d -m 775 %{buildroot}%{_localstatedir}/log/ceilometer # Install config files install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer -install -p -D -m 640 %{SOURCE1} %{buildroot}%{_sysconfdir}/ceilometer/ceilometer.conf +install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.d +install -d -m 755 %{buildroot}%{_sysconfdir}/sudoers.d +install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/ceilometer/ceilometer-dist.conf +install -p -D -m 640 %{SOURCE3} %{buildroot}%{_sysconfdir}/sudoers.d/ceilometer +install -p -D -m 640 etc/ceilometer/ceilometer.conf.sample %{buildroot}%{_sysconfdir}/ceilometer/ceilometer.conf install -p -D -m 640 etc/ceilometer/policy.json %{buildroot}%{_sysconfdir}/ceilometer/policy.json -install -p -D -m 640 etc/ceilometer/sources.json %{buildroot}%{_sysconfdir}/ceilometer/sources.json install -p -D -m 640 etc/ceilometer/pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/pipeline.yaml +install -p -D -m 640 etc/ceilometer/event_definitions.yaml %{buildroot}%{_sysconfdir}/ceilometer/event_definitions.yaml +install -p -D -m 640 etc/ceilometer/api_paste.ini %{buildroot}%{_sysconfdir}/ceilometer/api_paste.ini +install -p -D -m 640 etc/ceilometer/rootwrap.conf %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.conf +install -p -D -m 640 etc/ceilometer/rootwrap.d/ipmi.filters %{buildroot}/%{_sysconfdir}/ceilometer/rootwrap.d/ipmi.filters # Install initscripts for services +%if 0%{?rhel} && 0%{?rhel} <= 6 install -p -D -m 755 %{SOURCE10} %{buildroot}%{_initrddir}/%{name}-api install -p -D -m 755 %{SOURCE11} %{buildroot}%{_initrddir}/%{name}-collector install -p -D -m 755 %{SOURCE12} %{buildroot}%{_initrddir}/%{name}-compute install -p -D -m 755 %{SOURCE13} %{buildroot}%{_initrddir}/%{name}-central +install -p -D -m 755 %{SOURCE14} %{buildroot}%{_initrddir}/%{name}-alarm-notifier +install -p -D -m 755 %{SOURCE15} %{buildroot}%{_initrddir}/%{name}-alarm-evaluator +install -p -D -m 755 %{SOURCE16} %{buildroot}%{_initrddir}/%{name}-notification +install -p -D -m 755 %{SOURCE17} %{buildroot}%{_initrddir}/%{name}-ipmi +install -p -D -m 755 %{SOURCE18} %{buildroot}%{_initrddir}/%{name}-polling # Install upstart jobs examples install -d -m 755 %{buildroot}%{_datadir}/ceilometer @@ -248,19 +411,36 @@ install -p -m 644 %{SOURCE100} %{buildroot}%{_datadir}/ceilometer/ install -p -m 644 %{SOURCE110} %{buildroot}%{_datadir}/ceilometer/ install -p -m 644 %{SOURCE120} %{buildroot}%{_datadir}/ceilometer/ install -p -m 644 %{SOURCE130} %{buildroot}%{_datadir}/ceilometer/ +install -p -m 644 %{SOURCE140} %{buildroot}%{_datadir}/ceilometer/ +install -p -m 644 %{SOURCE150} %{buildroot}%{_datadir}/ceilometer/ +install -p -m 644 %{SOURCE160} %{buildroot}%{_datadir}/ceilometer/ +install -p -m 644 %{SOURCE170} %{buildroot}%{_datadir}/ceilometer/ +install -p -m 644 %{SOURCE180} %{buildroot}%{_datadir}/ceilometer/ +%else +install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-api.service +install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-collector.service +install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/%{name}-compute.service +install -p -D -m 644 %{SOURCE13} %{buildroot}%{_unitdir}/%{name}-central.service +install -p -D -m 644 %{SOURCE14} %{buildroot}%{_unitdir}/%{name}-alarm-notifier.service +install -p -D -m 644 %{SOURCE15} %{buildroot}%{_unitdir}/%{name}-alarm-evaluator.service +install -p -D -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/%{name}-notification.service +install -p -D -m 644 %{SOURCE17} %{buildroot}%{_unitdir}/%{name}-ipmi.service +install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/%{name}-polling.service +%endif # Install logrotate install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} +%if 0%{?rhel} && 0%{?rhel} <= 6 # Install pid directory install -d -m 755 %{buildroot}%{_localstatedir}/run/ceilometer +%endif # Remove unneeded in production stuff rm -f %{buildroot}%{_bindir}/ceilometer-debug rm -fr %{buildroot}%{python_sitelib}/tests/ rm -fr %{buildroot}%{python_sitelib}/run_tests.* rm -f %{buildroot}/usr/share/doc/ceilometer/README* -rm -f %{buildroot}/%{python_sitelib}/ceilometer/api/v1/static/LICENSE.* %pre common @@ -272,107 +452,302 @@ fi exit 0 %post compute +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 1 ] ; then # Initial installation /sbin/chkconfig --add %{name}-compute fi +%else +%systemd_post %{name}-compute.service +%endif %post collector +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 1 ] ; then # Initial installation /sbin/chkconfig --add %{name}-collector fi +%else +%systemd_post %{name}-collector.service +%endif + +%post notification +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 1 ] ; then + # Initial installation + /sbin/chkconfig --add %{name}-notification +fi +%else +%systemd_post %{name}-notification.service +%endif %post api +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 1 ] ; then # Initial installation /sbin/chkconfig --add %{name}-api fi +%else +%systemd_post %{name}-api.service +%endif %post central +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 1 ] ; then # Initial installation /sbin/chkconfig --add %{name}-central fi +%else +%systemd_post %{name}-central.service +%endif + + +%post alarm +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 1 ] ; then + # Initial installation + for svc in alarm-notifier alarm-evaluator; do + /sbin/chkconfig --add %{name}-${svc} + done +fi +%else +%systemd_post %{name}-alarm-notifier.service %{name}-alarm-evaluator.service +%endif + +%post ipmi +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 1 ] ; then + # Initial installation + /sbin/chkconfig --add %{name}-ipmi +fi +%else +%systemd_post %{name}-alarm-ipmi.service +%endif + +%post polling +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 1 ] ; then + # Initial installation + /sbin/chkconfig --add %{name}-polling +fi +%else +%systemd_post %{name}-polling.service +%endif %preun compute +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 0 ] ; then for svc in compute; do /sbin/service %{name}-${svc} stop > /dev/null 2>&1 /sbin/chkconfig --del %{name}-${svc} done fi +%else +%systemd_preun %{name}-compute.service +%endif %preun collector +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 0 ] ; then for svc in collector; do /sbin/service %{name}-${svc} stop > /dev/null 2>&1 /sbin/chkconfig --del %{name}-${svc} done fi +%else +%systemd_preun %{name}-collector.service +%endif + +%preun notification +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 0 ] ; then + for svc in notification; do + /sbin/service %{name}-${svc} stop > /dev/null 2>&1 + /sbin/chkconfig --del %{name}-${svc} + done +fi +%else +%systemd_preun %{name}-notification.service +%endif %preun api +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 0 ] ; then for svc in api; do /sbin/service %{name}-${svc} stop > /dev/null 2>&1 /sbin/chkconfig --del %{name}-${svc} done fi +%else +%systemd_preun %{name}-api.service +%endif %preun central +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -eq 0 ] ; then for svc in central; do /sbin/service %{name}-${svc} stop > /dev/null 2>&1 /sbin/chkconfig --del %{name}-${svc} done fi +%else +%systemd_preun %{name}-central.service +%endif + + +%preun alarm +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 0 ] ; then + for svc in alarm-notifier alarm-evaluator; do + /sbin/service %{name}-${svc} stop > /dev/null 2>&1 + /sbin/chkconfig --del %{name}-${svc} + done +fi +%else +%systemd_preun %{name}-alarm-notifier.service %{name}-alarm-evaluator.service +%endif + +%preun ipmi +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 0 ] ; then + for svc in ipmi; do + /sbin/service %{name}-${svc} stop > /dev/null 2>&1 + /sbin/chkconfig --del %{name}-${svc} + done +fi +%else +%systemd_preun %{name}-ipmi.service +%endif + +%preun polling +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -eq 0 ] ; then + for svc in polling; do + /sbin/service %{name}-${svc} stop > /dev/null 2>&1 + /sbin/chkconfig --del %{name}-${svc} + done +fi +%else +%systemd_preun %{name}-polling.service +%endif %postun compute +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall for svc in compute; do /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : done fi +%else +%systemd_postun_with_restart %{name}-compute.service +%endif %postun collector +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall for svc in collector; do /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : done fi +%else +%systemd_postun_with_restart %{name}-collector.service +%endif + +%postun notification +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + for svc in notification; do + /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : + done +fi +%else +%systemd_postun_with_restart %{name}-notification.service +%endif %postun api +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall for svc in api; do /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : done fi +%else +%systemd_postun_with_restart %{name}-api.service +%endif %postun central +%if 0%{?rhel} && 0%{?rhel} <= 6 if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall for svc in central; do /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : done fi +%else +%systemd_postun_with_restart %{name}-central.service +%endif +%postun alarm +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + for svc in alarm-notifier alarm-evaluator; do + /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : + done +fi +%else +%systemd_postun_with_restart %{name}-alarm-notifier.service %{name}-alarm-evaluator.service +%endif + +%postun ipmi +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + for svc in ipmi; do + /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : + done +fi +%else +%systemd_postun_with_restart %{name}-ipmi.service +%endif + +%postun polling +%if 0%{?rhel} && 0%{?rhel} <= 6 +if [ $1 -ge 1 ] ; then + # Package upgrade, not uninstall + for svc in polling; do + /sbin/service %{name}-${svc} condrestart > /dev/null 2>&1 || : + done +fi +%else +%systemd_postun_with_restart %{name}-polling.service +%endif + %files common %doc LICENSE %dir %{_sysconfdir}/ceilometer +%attr(-, root, ceilometer) %{_datadir}/ceilometer/ceilometer-dist.conf %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/ceilometer.conf %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/policy.json -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/sources.json %config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/pipeline.yaml +%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/api_paste.ini +%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_definitions.yaml %config(noreplace) %{_sysconfdir}/logrotate.d/%{name} -%dir %attr(0755, ceilometer, root) %{_localstatedir}/log/ceilometer +%dir %attr(0775, ceilometer, ceilometer) %{_localstatedir}/log/ceilometer +%if 0%{?rhel} && 0%{?rhel} <= 6 %dir %attr(0755, ceilometer, root) %{_localstatedir}/run/ceilometer +%endif + +%{_bindir}/ceilometer-dbsync +%{_bindir}/ceilometer-expirer +%{_bindir}/ceilometer-send-sample -%{_bindir}/ceilometer-* %defattr(-, ceilometer, ceilometer, -) %dir %{_sharedstatedir}/ceilometer @@ -392,44 +767,188 @@ fi %files compute %{_bindir}/ceilometer-agent-compute +%if 0%{?rhel} && 0%{?rhel} <= 6 %{_initrddir}/%{name}-compute %{_datarootdir}/ceilometer/%{name}-compute.upstart +%else +%{_unitdir}/%{name}-compute.service +%endif %files collector -%{_bindir}/ceilometer-collector +%{_bindir}/ceilometer-collector* +%if 0%{?rhel} && 0%{?rhel} <= 6 %{_initrddir}/%{name}-collector %{_datarootdir}/ceilometer/%{name}-collector.upstart +%else +%{_unitdir}/%{name}-collector.service +%endif + + +%files notification +%{_bindir}/ceilometer-agent-notification +%if 0%{?rhel} && 0%{?rhel} <= 6 +%{_initrddir}/%{name}-notification +%{_datarootdir}/ceilometer/%{name}-notification.upstart +%else +%{_unitdir}/%{name}-notification.service +%endif %files api -%doc ceilometer/api/v1/static/LICENSE.* %{_bindir}/ceilometer-api +%if 0%{?rhel} && 0%{?rhel} <= 6 %{_initrddir}/%{name}-api %{_datarootdir}/ceilometer/%{name}-api.upstart +%else +%{_unitdir}/%{name}-api.service +%endif %files central %{_bindir}/ceilometer-agent-central +%if 0%{?rhel} && 0%{?rhel} <= 6 %{_initrddir}/%{name}-central %{_datarootdir}/ceilometer/%{name}-central.upstart +%else +%{_unitdir}/%{name}-central.service +%endif + + +%files ipmi +%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/rootwrap.conf +%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/rootwrap.d/ipmi.filters +%{_bindir}/ceilometer-rootwrap +%{_bindir}/ceilometer-agent-ipmi +%{_sysconfdir}/sudoers.d/ceilometer +%if 0%{?rhel} && 0%{?rhel} <= 6 +%{_initrddir}/%{name}-ipmi +%{_datarootdir}/ceilometer/%{name}-ipmi.upstart +%else +%{_unitdir}/%{name}-ipmi.service +%endif + + +%files polling +%{_bindir}/ceilometer-polling +%if 0%{?rhel} && 0%{?rhel} <= 6 +%{_initrddir}/%{name}-polling +%{_datarootdir}/ceilometer/%{name}-polling.upstart +%else +%{_unitdir}/%{name}-polling.service +%endif + + +%files alarm +%{_bindir}/ceilometer-alarm-notifier +%{_bindir}/ceilometer-alarm-evaluator +%if 0%{?rhel} && 0%{?rhel} <= 6 +%{_initrddir}/%{name}-alarm-notifier +%{_datarootdir}/ceilometer/%{name}-alarm-notifier.upstart +%{_initrddir}/%{name}-alarm-evaluator +%{_datarootdir}/ceilometer/%{name}-alarm-evaluator.upstart +%else +%{_unitdir}/%{name}-alarm-notifier.service +%{_unitdir}/%{name}-alarm-evaluator.service +%endif %changelog -* Tue Aug 13 2013 Matthias Runge - 2013.1.3-1 -- rebase to 2013.1.3 +* Fri Jan 23 2015 Ivan Berezovskiy - 2015.1.0 +- Create own package for polling agent +- Update requirements and version to 2015.1.0 + +* Wed Jan 21 2015 Ivan Berezovskiy - 2015.1.0b1 +- Update version to 2015.1.0b1 + +* Wed Nov 19 2014 Daniil Trishkin - 2014.2 +- Update to upstream 2014.2 +- Update requirements -* Fri Jun 21 2013 Pádraig Brady - 2013.1.2-2 -- Avoid qpid exchange leaks +* Fri Jul 4 2014 Ivan Berezovskiy - 2014.2.b1 +- Update to upstream 2014.2.b1 +- Update requirements -* Thu Jun 6 2013 Pádraig Brady - 2013.1.2-1 -- Update to stable/grizzly release 2013.1.2 +* Wed Jun 11 2014 Steve Linabery - 2014.1.1-2 +- Update to upstream 2014.1.1 +- fix message routing with newer QPID (rhbz#1103800) -* Thu Jun 6 2013 Pádraig Brady - 2013.1-3 +* Sat Jun 07 2014 Fedora Release Engineering - 2014.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed May 07 2014 Pádraig Brady - 2014.1-2 +- Avoid dependency issues with distributed installs (#1095414) + +* Thu Apr 17 2014 Pádraig Brady - 2014.1-1 +- Update to Icehouse release + +* Fri Apr 11 2014 Pádraig Brady - 2014.1-0.7.rc2 +- Update to upstream 2014.1.rc2 +- Remove qpid as default rpc backend +- Split out openstack-ceilometer-notification subpackage from collector + +* Mon Mar 31 2014 Pádraig Brady 2014.1-0.6.rc1 +- Update to upstream 2014.1.rc1 + +* Fri Mar 14 2014 Pádraig Brady - 2014.1-0.5.b3 +- Update to Icehouse milestone 3 + +* Tue Feb 04 2014 Pádraig Brady - 2014.1-0.4.b2 +- Fix missing dependency on python-babel + +* Mon Jan 27 2014 Pádraig Brady - 2014.1-0.3.b2 +- Update to Icehouse milestone 2 + +* Mon Jan 06 2014 Pádraig Brady - 2014.1-0.2.b1 +- Set python-six min version to ensure updated + +* Mon Dec 23 2013 Pádraig Brady - 2014.1-0.1.b1 +- Update to Icehouse milestone 1 + +* Tue Dec 17 2013 Pádraig Brady - 2013.2.1-1 +- Update to Havana stable release 2013.2.1 + +* Thu Oct 17 2013 Pádraig Brady - 2013.2-1 +- Update to Havana release + +* Tue Oct 15 2013 Pádraig Brady - 2013.2-0.12.rc2 +- Update to Havana rc2 +- openstack-ceilometer-alarm now depends on python-ceilometerclient + +* Thu Oct 03 2013 Pádraig Brady - 2013.2-0.12.rc1 +- Update to Havana rc1 +- Separate out the new alarm services to the 'alarm' subpackage + +* Fri Sep 13 2013 Pádraig Brady - 2013.2-0.10.b3 +- Depend on python-oslo-config >= 1:1.2.0 so it upgraded automatically + +* Mon Sep 10 2013 Pádraig Brady - 2013.2-0.8.b3 +- Depend on python-pymongo rather than pymongo to avoid a puppet bug + +* Mon Sep 9 2013 Pádraig Brady - 2013.2-0.7.b3 +- Depend on python-alembic + +* Mon Sep 9 2013 Pádraig Brady - 2013.2-0.6.b3 +- Distribute dist defaults in ceilometer-dist.conf separate to user ceilometer.conf + +* Mon Sep 9 2013 Pádraig Brady - 2013.2-0.5.b3 +- Update to Havana milestone 3 + +* Tue Aug 27 2013 Pádraig Brady - 2013.2-0.4.b1 +- Avoid python runtime dependency management + +* Sat Aug 03 2013 Fedora Release Engineering - 2013.2-0.3.b1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Jun 6 2013 Pádraig Brady - 2013.2-0.2.b1 - Fix uninstall for openstack-ceilometer-central +* Fri May 31 2013 Pádraig Brady - 2013.2-0.1.b1 +- Havana milestone 1 + * Mon Apr 8 2013 Pádraig Brady - 2013.1-2 - Grizzly release * Tue Mar 26 2013 Pádraig Brady - 2013.1-0.5.g3 - Initial package +