X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=rpm%2FSPECS%2Fopenstack-ceilometer.spec;fp=rpm%2FSPECS%2Fopenstack-ceilometer.spec;h=88bac79cd72bbebd549905d607741884c2723f1c;hb=1f7aebf6adad8c8064ecc7f74bbb0c0d363f9872;hp=733f1de930944b99ae735b46845adaa52f01906d;hpb=2ecca9020bea3d1117b35a696e1c612266c58981;p=openstack-build%2Fceilometer-build.git diff --git a/rpm/SPECS/openstack-ceilometer.spec b/rpm/SPECS/openstack-ceilometer.spec index 733f1de..88bac79 100644 --- a/rpm/SPECS/openstack-ceilometer.spec +++ b/rpm/SPECS/openstack-ceilometer.spec @@ -3,7 +3,7 @@ %global pypi_name ceilometer Name: openstack-ceilometer -Version: 2014.2.b1 +Version: 2015.1.0b1 Release: 2%{?dist} Summary: OpenStack measurement collection service @@ -13,8 +13,9 @@ URL: https://wiki.openstack.org/wiki/Ceilometer Source0: http://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{version}.tar.gz Source1: %{pypi_name}-dist.conf Source2: %{pypi_name}.logrotate -Source3: %{pypi_name}.conf.sample +Source3: ceilometer-rootwrap-sudoers +%if 0%{?rhel} && 0%{?rhel} <= 6 Source10: %{name}-api.init Source100: %{name}-api.upstart Source11: %{name}-collector.init @@ -29,6 +30,18 @@ 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 +%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 +%endif # # patches_base=2014.1.1 @@ -41,13 +54,21 @@ BuildRequires: python-setuptools 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 +BuildRequires: python-oslo-messaging +BuildRequires: python-keystonemiddleware + # These are required to build due to the requirements check added BuildRequires: python-sqlalchemy -BuildRequires: python-webob1.2 +BuildRequires: python-webob +%if ! (0%{?rhel} && 0%{?rhel} <= 6) +BuildRequires: systemd-units +%endif %description OpenStack ceilometer provides services to measure and @@ -88,6 +109,7 @@ Requires: python-migrate >= 0.9.1, python-migrate < 0.9.2, python-migrat Requires: python-webob >= 1.2.3 +Requires: python-oslo-concurrency >= 0.4.0 Requires: python-oslo-config >= 1:1.4.0 Requires: python-oslo-db >= 1.0.0 Requires: python-oslo-rootwrap >= 1.3.0 @@ -133,12 +155,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. @@ -224,10 +251,13 @@ Group: Applications/System Requires: %{name}-common = %{version}-%{release} +Requires: python-keystonemiddleware +Requires: python-oslo-db Requires: python-pymongo Requires: python-flask Requires: python-wsme >= 0.6 Requires: python-pecan >= 0.5.0 +Requires: python-paste-deploy %description api OpenStack ceilometer provides services to measure and @@ -251,6 +281,28 @@ 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: python-novaclient +Requires: python-keystoneclient +Requires: python-neutronclient +Requires: python-tooz +Requires: python-oslo-rootwrap +Requires: ipmitool + +%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. + + %if 0%{?with_doc} %package doc Summary: Documentation for OpenStack ceilometer @@ -303,6 +355,13 @@ 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 @@ -310,14 +369,20 @@ 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 -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/ceilometer/ceilometer-dist.conf -install -p -D -m 640 %{SOURCE3} %{buildroot}%{_sysconfdir}/ceilometer/ceilometer.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/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 @@ -325,6 +390,7 @@ 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 upstart jobs examples install -d -m 755 %{buildroot}%{_datadir}/ceilometer @@ -335,12 +401,25 @@ 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/ +%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 +%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 @@ -358,140 +437,247 @@ 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 %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 %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 -/bin/systemctl daemon-reload >/dev/null 2>&1 || : +%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 %files common %doc LICENSE @@ -505,13 +691,14 @@ fi %config(noreplace) %{_sysconfdir}/logrotate.d/%{name} %dir %attr(0755, ceilometer, root) %{_localstatedir}/log/ceilometer +%if 0%{?rhel} && 0%{?rhel} <= 6 %dir %attr(0755, ceilometer, root) %{_localstatedir}/run/ceilometer +%endif -%{_bindir}/ceilometer-agent-ipmi %{_bindir}/ceilometer-dbsync %{_bindir}/ceilometer-expirer -%{_bindir}/ceilometer-rootwrap %{_bindir}/ceilometer-send-sample +%{_bindir}/ceilometer-polling %defattr(-, ceilometer, ceilometer, -) @@ -532,44 +719,86 @@ 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 %{_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 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 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 +* 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