Move ceilometer to 8.0 branch
[openstack-build/ceilometer-build.git] / centos7 / rpm / SPECS / openstack-ceilometer.spec
similarity index 59%
rename from rpm/SPECS/openstack-ceilometer.spec
rename to centos7/rpm/SPECS/openstack-ceilometer.spec
index 89f23cf70a946ac9377104e0f78bc4e43ac86e63..5a9dcbff0ee0d745813dd1a3654bfd0f034ab0d2 100644 (file)
@@ -3,38 +3,23 @@
 %global pypi_name ceilometer
 
 Name:             openstack-ceilometer
-Version:          2015.1.0
-Release:          2%{?dist}
+# Liberty semver reset
+# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z
+Epoch:            1
+Version:          5.0.0.0rc1
+Release:          1%{?dist}~mos8.0.1
 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
+Source0:          %{pypi_name}-%{version}.tar.gz
 Source1:          %{pypi_name}-dist.conf
 Source2:          %{pypi_name}.logrotate
-Source3:          ceilometer-rootwrap-sudoers
+Source3:          %{pypi_name}.conf.sample
+Source4:          ceilometer-rootwrap-sudoers
+Source5:          openstack-ceilometer-polling
 
-%if 0%{?rhel} && 0%{?rhel} <= 6
-Source10:         %{name}-api.init
-Source100:        %{name}-api.upstart
-Source11:         %{name}-collector.init
-Source110:        %{name}-collector.upstart
-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
@@ -44,34 +29,16 @@ Source15:         %{name}-alarm-evaluator.service
 Source16:         %{name}-notification.service
 Source17:         %{name}-ipmi.service
 Source18:         %{name}-polling.service
-%endif
-
-#
-# patches_base=2014.1.1
-#
 
 BuildArch:        noarch
 BuildRequires:    intltool
-BuildRequires:    python-sphinx10
+BuildRequires:    python-sphinx
 BuildRequires:    python-setuptools
-BuildRequires:    python-pbr >= 0.10
+BuildRequires:    python-pbr
 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-sqlalchemy >= 0.9.7
-BuildRequires:    python-webob >= 1.2.3
 
-%if ! (0%{?rhel} && 0%{?rhel} <= 6)
-BuildRequires: systemd-units
-%endif
+BuildRequires:    systemd-units
 
 %description
 OpenStack ceilometer provides services to measure and
@@ -82,53 +49,47 @@ 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-babel >= 1.3
+Requires:         python-eventlet >= 0.7.14
+Requires:         python-greenlet >= 0.3.2
 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-anyjson >= 0.3.3
+Requires:         python-jsonpath-rw >= 1.2.0
+Requires:         python-jsonpath-rw-ext >= 0.1.7
+Requires:         python-stevedore >= 1.5.0
 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-requests >= 2.2.0
-Requires:         python-retrying >= 1.2.3
+Requires:         python-pbr >= 1.6
 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-sqlalchemy >= 0.9.9
+Requires:         python-alembic >= 0.8.0
+Requires:         python-migrate >= 0.9.6
+
 Requires:         python-webob >= 1.2.3
-Requires:         python-wsme >= 0.8
+Requires:         python-oslo-config >= 2:2.3.0
 Requires:         PyYAML >= 3.1.0
+Requires:         python-netaddr >= 0.7.12
+Requires:         python-oslo-rootwrap >= 2.0.0
+Requires:         python-oslo-vmware >= 1.16.0
+Requires:         python-requests >= 2.5.2
+
+Requires:         pysnmp >= 4.2.1
+Requires:         pytz >= 2013.6
+Requires:         python-croniter >= 0.3.4
+
+Requires:         python-retrying >= 1.2.3
+Requires:         python-jsonschema >= 2.0.0
+Requires:         python-werkzeug >= 0.7
+
+Requires:         python-oslo-context >= 0.2.0
+Requires:         python-oslo-concurrency >= 2.3.0
+Requires:         python-oslo-i18n >= 1.5.0
+Requires:         python-oslo-log >= 1.8.0
+Requires:         python-oslo-middleware >= 2.8.0
+Requires:         python-oslo-policy >= 0.5.0
+Requires:         python-oslo-service >= 0.7.0
+Requires:         python-oslo-reports >= 0.1.0
 
 %description -n   python-ceilometer
 OpenStack ceilometer provides services to measure and
@@ -141,20 +102,19 @@ This package contains the ceilometer python library.
 Summary:          Components common to all OpenStack ceilometer services
 Group:            Applications/System
 
-Requires:         python-ceilometer = %{version}-%{release}
-Requires:         openstack-utils
+Requires:         python-ceilometer = %{epoch}:%{version}-%{release}
+Requires:         python-oslo-messaging >= 1.16.0
+Requires:         python-oslo-serialization >= 1.4.0
+Requires:         python-oslo-utils >= 2.0.0
+Requires:         python-posix_ipc
 
-%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.
@@ -167,11 +127,13 @@ ceilometer services.
 Summary:          OpenStack ceilometer compute agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         %{name}-polling = %{epoch}:%{version}-%{release}
 
-Requires:         libvirt-python
-Requires:         python-keystoneclient >= 1.1.0
-Requires:         python-novaclient >= 2.22.0
+Requires:         python-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-tooz >= 1.19.0
+Requires:         libvirt-python >= 1.2.5
 
 %description compute
 OpenStack ceilometer provides services to measure and
@@ -185,12 +147,15 @@ running on OpenStack compute nodes.
 Summary:          OpenStack ceilometer central agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         %{name}-polling = %{epoch}:%{version}-%{release}
 
-Requires:         python-glanceclient >= 0.15.0
-Requires:         python-keystoneclient >= 1.1.0
-Requires:         python-novaclient >= 2.22.0
+Requires:         python-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-glanceclient >= 1:0.18.0
 Requires:         python-swiftclient >= 2.2.0
+Requires:         python-neutronclient >= 2.6.0
+Requires:         python-tooz >= 1.19.0
 
 %description central
 OpenStack ceilometer provides services to measure and
@@ -203,12 +168,14 @@ This package contains the central ceilometer agent.
 Summary:          OpenStack ceilometer collector
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
 
 # 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
+Requires:         %{name}-notification
+
+Requires:         python-oslo-db >= 2.4.1
+Requires:         python-pymongo >= 3.0.2
 
 %description collector
 OpenStack ceilometer provides services to measure and
@@ -222,7 +189,7 @@ which collects metrics from the various agents.
 Summary:          OpenStack ceilometer notification agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
 
 %description notification
 OpenStack ceilometer provides services to measure and
@@ -237,15 +204,16 @@ various OpenStack services.
 Summary:          OpenStack ceilometer API service
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
 
-Requires:         python-flask >= 0.10
-Requires:         python-keystonemiddleware >= 1.5.0
-Requires:         python-oslo-db >= 1.7.0
+Requires:         python-keystonemiddleware >= 2.0.0
+Requires:         python-oslo-db >= 2.4.1
+Requires:         python-pymongo >= 3.0.2
+Requires:         python-pecan >= 1.0.0
+Requires:         python-wsme >= 0.7
 Requires:         python-paste-deploy >= 1.5.0
-Requires:         python-pecan >= 0.8.0
-Requires:         python-pymongo >= 2.6.3
-Requires:         python-wsme >= 0.6
+Requires:         python-ceilometerclient >= 1.5.0
+Requires:         python-tooz >= 1.19.0
 
 %description api
 OpenStack ceilometer provides services to measure and
@@ -258,8 +226,8 @@ This package contains the ceilometer API service.
 Summary:          OpenStack ceilometer alarm services
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
-Requires:         python-ceilometerclient >= 1.0.13
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         python-ceilometerclient >= 1.5.0
 
 %description alarm
 OpenStack ceilometer provides services to measure and
@@ -273,14 +241,15 @@ and evaluation services.
 Summary:          OpenStack ceilometer ipmi agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{version}-%{release}
+Requires:         %{name}-polling = %{epoch}:%{version}-%{release}
 
+Requires:         python-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-neutronclient >= 2.6.0
+Requires:         python-tooz >= 1.19.0
+Requires:         python-oslo-rootwrap >= 2.0.0
 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
@@ -295,13 +264,13 @@ by-passing Ironic's management of baremetal.
 Summary:          OpenStack ceilometer polling agent
 Group:            Applications/System
 
-Requires:         %{name}-common = %{version}-%{release}
+Requires:         %{name}-common = %{epoch}:%{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-novaclient >= 1:2.28.1
+Requires:         python-keystoneclient >= 1:1.6.0
+Requires:         python-glanceclient >= 1:0.18.0
 Requires:         python-swiftclient >= 2.2.0
+Requires:         libvirt-python >= 1.2.5
 
 %description polling
 Ceilometer aims to deliver a unique point of contact for billing systems to
@@ -320,12 +289,11 @@ Summary:          Documentation for OpenStack ceilometer
 Group:            Documentation
 
 # Required to build module documents
-BuildRequires:    python-eventlet >= 0.16.1
-BuildRequires:    python-sqlalchemy >= 0.9.7
-BuildRequires:    python-webob >= 1.2.3
+BuildRequires:    python-eventlet
+BuildRequires:    python-sqlalchemy
+BuildRequires:    python-webob
 # while not strictly required, quiets the build down when building docs.
-BuildRequires:    python-migrate >= 0.9.5
-BuildRequires:    python-iso8601 >= 0.1.9
+BuildRequires:    python-migrate, python-iso8601
 
 %description      doc
 OpenStack ceilometer provides services to measure and
@@ -349,10 +317,22 @@ sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py
 rm -rf {test-,}requirements.txt tools/{pip,test}-requires
 
 %build
-%{__python} setup.py build
+%{__python2} setup.py build
+
+install -p -D -m 640 %{SOURCE3} etc/ceilometer/ceilometer.conf.sample
+
+# Programmatically update defaults in sample config
+# which is installed at /etc/ceilometer/ceilometer.conf
+# TODO: Make this more robust
+# Note it only edits the first occurance, so assumes a section ordering in sample
+# and also doesn't support multi-valued variables.
+while read name eq value; do
+  test "$name" && test "$value" || continue
+  sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/ceilometer/ceilometer.conf.sample
+done < %{SOURCE1}
 
 %install
-%{__python} setup.py install -O1 --skip-build --root %{buildroot}
+%{__python2} setup.py install -O1 --skip-build --root %{buildroot}
 
 # docs generation requires everything to be installed first
 export PYTHONPATH="$( pwd ):$PYTHONPATH"
@@ -360,34 +340,30 @@ export PYTHONPATH="$( pwd ):$PYTHONPATH"
 pushd doc
 
 %if 0%{?with_doc}
-SPHINX_DEBUG=1 sphinx-1.0-build -b html source build/html
+SPHINX_DEBUG=1 sphinx-build -b html source build/html
 # Fix hidden-file-or-dir warnings
 rm -fr build/html/.doctrees build/html/.buildinfo
 %endif
 
 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 775 %{buildroot}%{_localstatedir}/log/ceilometer
+install -d -m 755 %{buildroot}%{_localstatedir}/log/ceilometer
 
 # Install config files
 install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer
 install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.d
 install -d -m 755 %{buildroot}%{_sysconfdir}/sudoers.d
+install -d -m 755 %{buildroot}%{_sysconfdir}/sysconfig
 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 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/sudoers.d/ceilometer
+install -p -D -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/sysconfig/openstack-ceilometer-polling
 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/pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/pipeline.yaml
+install -p -D -m 640 etc/ceilometer/event_pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/event_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
@@ -431,15 +407,10 @@ install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/%{name}-polling.service
 # 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 -fr %{buildroot}%{python2_sitelib}/tests/
+rm -fr %{buildroot}%{python2_sitelib}/run_tests.*
 rm -f %{buildroot}/usr/share/doc/ceilometer/README*
 
 
@@ -452,297 +423,90 @@ 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
+%license 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/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(0775, ceilometer, ceilometer) %{_localstatedir}/log/ceilometer
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%dir %attr(0755, ceilometer, root) %{_localstatedir}/run/ceilometer
-%endif
+%dir %attr(0755, ceilometer, root) %{_localstatedir}/log/ceilometer
 
 %{_bindir}/ceilometer-dbsync
 %{_bindir}/ceilometer-expirer
@@ -755,8 +519,8 @@ fi
 
 
 %files -n python-ceilometer
-%{python_sitelib}/ceilometer
-%{python_sitelib}/ceilometer-%{version}*.egg-info
+%{python2_sitelib}/ceilometer
+%{python2_sitelib}/ceilometer-*.egg-info
 
 
 %if 0%{?with_doc}
@@ -766,94 +530,56 @@ 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*
-%if 0%{?rhel} && 0%{?rhel} <= 6
-%{_initrddir}/%{name}-collector
-%{_datarootdir}/ceilometer/%{name}-collector.upstart
-%else
 %{_unitdir}/%{name}-collector.service
-%endif
 
 
 %files notification
+%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_pipeline.yaml
+%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_definitions.yaml
 %{_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
 %{_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 alarm
+%{_bindir}/ceilometer-alarm-notifier
+%{_bindir}/ceilometer-alarm-evaluator
+%{_unitdir}/%{name}-alarm-notifier.service
+%{_unitdir}/%{name}-alarm-evaluator.service
 
 
 %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
+%attr(-, root, ceilometer) %{_sysconfdir}/sysconfig/openstack-ceilometer-polling
 %{_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
+* Mon Sep 28 2015 Daniil Trishkin <dtrishkin@mirantis.com> - 1:5.0.0.0rc1-1%{?dist}~mos8.0.1
+- Update for Liberty
+- Update requirements according to global requirements of Liberty
+- .spec is from https://raw.githubusercontent.com/openstack-packages/ceilometer/rpm-master/openstack-ceilometer.spec
+
 * Fri Jan 23 2015 Ivan Berezovskiy <iberezovskiy@mirantis.com> - 2015.1.0
 - Create own package for polling agent
 - Update requirements and version to 2015.1.0
@@ -922,7 +648,7 @@ fi
 * Fri Sep 13 2013 Pádraig Brady <pbrady@redhat.com> - 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 <pbrady@redhat.com> - 2013.2-0.8.b3
+* Tue Sep 10 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.8.b3
 - Depend on python-pymongo rather than pymongo to avoid a puppet bug
 
 * Mon Sep 9 2013 Pádraig Brady <pbrady@redhat.com> - 2013.2-0.7.b3