131 lines
4.5 KiB
Django/Jinja
131 lines
4.5 KiB
Django/Jinja
{% set pypi_name = 'monasca-persister' %}
|
|
{% set source = fetch_source('https://tarballs.openstack.org/monasca-persister/monasca-persister-master.tar.gz') %}
|
|
{% set upstream_version = upstream_version() %}
|
|
{% set rpm_release = '1' %}
|
|
|
|
%global sname {{ pypi_name }}
|
|
Name: {{ py2name() }}
|
|
Version: {{ py2rpmversion() }}
|
|
Release: {{ py2rpmrelease() }}
|
|
Summary: Consumes metrics and alarm state transitions from message queue and stores them in database
|
|
License: {{ license('Apache-2.0') }}
|
|
Group: Development/Languages/Python
|
|
URL: https://wiki.openstack.org/wiki/Monasca
|
|
Source0: {{ source|basename }}
|
|
Source1: openstack-monasca-persister.service
|
|
Source2: openstack-monasca-persister.logrotate
|
|
BuildRequires: openstack-macros
|
|
BuildRequires: {{ py2pkg('elasticsearch') }}
|
|
BuildRequires: {{ py2pkg('influxdb') }}
|
|
BuildRequires: {{ py2pkg('mock') }}
|
|
BuildRequires: {{ py2pkg('monasca-common') }}
|
|
BuildRequires: {{ py2pkg('nose') }}
|
|
BuildRequires: {{ py2pkg('oslo.config') }}
|
|
BuildRequires: {{ py2pkg('oslo.log') }}
|
|
BuildRequires: {{ py2pkg('oslotest') }}
|
|
BuildRequires: {{ py2pkg('setuptools') }}
|
|
BuildRequires: {{ py2pkg('six') }}
|
|
Requires: logrotate
|
|
Requires: python-{{ pypi_name }} = %{version}-%{release}
|
|
BuildArch: noarch
|
|
%if 0%{?suse_version}
|
|
BuildRequires: systemd-rpm-macros
|
|
Requires(pre): pwdutils
|
|
%{?systemd_requires}
|
|
%else
|
|
BuildRequires: systemd
|
|
Requires(post): systemd
|
|
Requires(postun): systemd
|
|
Requires(pre): shadow-utils
|
|
Requires(preun): systemd
|
|
%endif
|
|
|
|
%description
|
|
Consumes metrics and alarm state transitions from message queue and stores them in database.
|
|
Data is read from Kafka queue and saved either in InfluxDB or Cassandra
|
|
|
|
%package -n python-{{ pypi_name }}
|
|
Summary: Consumes metrics and alarm state transitions from message queue and stores them in database
|
|
Group: Development/Languages/Python
|
|
Requires: {{ py2pkg('cassandra-driver') }}
|
|
Requires: {{ py2pkg('influxdb') }}
|
|
Requires: {{ py2pkg('monasca-common') }}
|
|
Requires: {{ py2pkg('oslo.config') }}
|
|
Requires: {{ py2pkg('oslo.log') }}
|
|
Requires: {{ py2pkg('six') }}
|
|
|
|
%description -n python-{{ pypi_name }}
|
|
Consumes metrics and alarm state transitions from message queue and stores them in database.
|
|
Data is read from Kafka queue and saved either in InfluxDB or Cassandra
|
|
|
|
%prep
|
|
%autosetup -n %{sname}-{{ upstream_version }}
|
|
%py_req_cleanup
|
|
|
|
%build
|
|
%{py2_build}
|
|
PYTHONPATH=. oslo-config-generator \
|
|
--config-file config-generator/persister.conf \
|
|
--output-file etc/monasca/persister.conf.sample
|
|
|
|
%install
|
|
%{py2_install}
|
|
|
|
# create all necessary directories
|
|
install -d -m 755 %{buildroot}%{_sysconfdir}/monasca
|
|
install -d -m 755 %{buildroot}%{_var}/lib/{{ pypi_name }}
|
|
install -d -m 755 %{buildroot}%{_var}/log/{{ pypi_name }}
|
|
|
|
# install config
|
|
install -D -m 640 etc/monasca/persister-logging.conf %{buildroot}%{_sysconfdir}/monasca/persister-logging.conf
|
|
install -D -m 644 etc/monasca/persister.conf.sample %{buildroot}%{_sysconfdir}/monasca/persister.conf
|
|
|
|
# install systemd service
|
|
install -p -D -m 444 %{SOURCE1} %{buildroot}%{_unitdir}/openstack-monasca-persister.service
|
|
|
|
# Install logrotate
|
|
install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-monasca-persister.logrotate
|
|
|
|
%check
|
|
find . -type f -name *.pyc -delete
|
|
nosetests monasca_persister --verbose
|
|
|
|
%pre
|
|
%openstack_pre_user_group_create monasca-persister monasca /sbin/nologin
|
|
|
|
%preun
|
|
%systemd_preun openstack-monasca-persister.service
|
|
|
|
%post
|
|
%systemd_post openstack-monasca-persister.service
|
|
|
|
|
|
%postun
|
|
%systemd_postun_with_restart openstack-monasca-persister.service
|
|
if [ $1 -eq 0 ] ; then
|
|
getent passwd monasca-persister > /dev/null
|
|
if [ "$?" == "0" ] ; then
|
|
userdel monasca-persister
|
|
fi
|
|
fi
|
|
|
|
%files
|
|
%license LICENSE
|
|
%doc README.rst ChangeLog
|
|
%dir %attr(-, root, monasca) %{_sysconfdir}/monasca
|
|
%dir %attr(0750, monasca-persister, monasca) %{_var}/lib/{{ pypi_name }}
|
|
%dir %attr(0750, monasca-persister, monasca) %{_var}/log/{{ pypi_name }}
|
|
%config(noreplace) %attr(0640, root, monasca) %{_sysconfdir}/monasca/persister.conf
|
|
%config(noreplace) %attr(0640, root, monasca) %{_sysconfdir}/monasca/persister-logging.conf
|
|
%config(noreplace) %{_sysconfdir}/logrotate.d/openstack-monasca-persister.logrotate
|
|
%{_unitdir}/openstack-monasca-persister.service
|
|
%{_bindir}/monasca-persister
|
|
|
|
%files -n python-{{ pypi_name }}
|
|
%defattr(-, root, root,-)
|
|
%license LICENSE
|
|
%{python2_sitelib}/monasca_persister
|
|
%{python2_sitelib}/monasca_persister-*.egg-info
|
|
|
|
%changelog
|