masakari-monitors: Switch to python3

- Also drop useless BuildRequires
- Drop %check. Tests are not executed currently
- Add prefix openstack- to .service files to be consistent with other services

Change-Id: I24fe8808b2668eb733689da7aa4542b647e08052
This commit is contained in:
Thomas Bechtold
2019-09-06 14:45:09 +02:00
parent b438d56bdd
commit 7e01f5cc8a
6 changed files with 59 additions and 98 deletions

View File

@@ -3,7 +3,7 @@
{% set upstream_version = upstream_version() %}
{% set rpm_release = '1' %}
Name: {{ py2name('masakari-monitors') }}
Name: {{ py2name() }}
Version: {{ py2rpmversion() }}
Release: {{ py2rpmrelease() }}
Summary: Monitors for Virtual Machine High Availability (VMHA) service in OpenStack
@@ -13,47 +13,36 @@ URL: https://launchpad.net/masakari-monitors
# basename filter prevents OBS from downloading the source itself which would
# fetch from a stale cache hashed by non-changing URL.
Source0: {{ source|basename }}
Source1: masakari-hostmonitor.service
Source2: masakari-instancemonitor.service
Source3: masakari-processmonitor.service
Source4: masakari-monitors.tmpfiles
Source5: masakari-introspectiveinstancemonitor.service
Source1: openstack-masakari-hostmonitor.service
Source2: openstack-masakari-instancemonitor.service
Source3: openstack-masakari-processmonitor.service
Source4: openstack-masakari-monitors.tmpfiles
Source5: openstack-masakari-introspectiveinstancemonitor.service
BuildRequires: openstack-macros
BuildRequires: {{ py2pkg('ddt') }}
BuildRequires: {{ py2pkg('eventlet') }}
BuildRequires: {{ py2pkg('keystoneauth1') }}
BuildRequires: {{ py2pkg('keystonemiddleware') }}
BuildRequires: {{ py2pkg('libvirt-python') }}
BuildRequires: {{ py2pkg('python-masakariclient') }}
BuildRequires: {{ py2pkg('microversion_parse') }}
BuildRequires: {{ py2pkg('python-novaclient') }}
BuildRequires: {{ py2pkg('python-openstackclient') }}
BuildRequires: {{ py2pkg('openstacksdk') }}
BuildRequires: {{ py2pkg('oslo.concurrency') }}
BuildRequires: {{ py2pkg('oslo.config') }}
BuildRequires: {{ py2pkg('oslo.db') }}
BuildRequires: {{ py2pkg('oslo.i18n') }}
BuildRequires: {{ py2pkg('oslo.log') }}
BuildRequires: {{ py2pkg('oslo.middleware') }}
BuildRequires: {{ py2pkg('oslo.policy') }}
BuildRequires: {{ py2pkg('oslo.privsep') }}
BuildRequires: {{ py2pkg('oslo.service') }}
BuildRequires: {{ py2pkg('oslo.versionedobjects') }}
BuildRequires: {{ py2pkg('oslotest') }}
BuildRequires: {{ py2pkg('python-subunit') }}
BuildRequires: {{ py2pkg('reno') }}
BuildRequires: {{ py2pkg('requests-mock') }}
BuildRequires: {{ py2pkg('taskflow') }}
BuildRequires: {{ py2pkg('testrepository') }}
BuildRequires: {{ py2pkg('testresources') }}
BuildRequires: {{ py2pkg('testscenarios') }}
BuildRequires: {{ py2pkg('testtools') }}
Requires: python-masakari-monitors = %{version}-%{release}
BuildRequires: {{ py3('eventlet') }}
BuildRequires: {{ py3('keystoneauth1') }}
BuildRequires: {{ py3('libvirt-python') }}
BuildRequires: {{ py3('python-openstackclient') }}
BuildRequires: {{ py3('openstacksdk') }}
BuildRequires: {{ py3('oslo.concurrency') }}
BuildRequires: {{ py3('oslo.config') }}
BuildRequires: {{ py3('oslo.db') }}
BuildRequires: {{ py3('oslo.i18n') }}
BuildRequires: {{ py3('oslo.log') }}
BuildRequires: {{ py3('oslo.middleware') }}
BuildRequires: {{ py3('oslo.policy') }}
BuildRequires: {{ py3('oslo.privsep') }}
BuildRequires: {{ py3('oslo.service') }}
Requires: python3-masakari-monitors = %{version}-%{release}
BuildArch: noarch
%if 0%{?suse_version}
BuildRequires: systemd-rpm-macros
%{?systemd_requires}
%else
BuildRequires: systemd
Requires(post): systemd
Requires(postun): systemd
Requires(preun): systemd
%endif
%description
@@ -64,19 +53,10 @@ System package - %{name}
%package doc
Summary: Documentation for OpenStack Masakari Service
BuildRequires: git
BuildRequires: {{ py2pkg('Tempest') }}
BuildRequires: {{ py2pkg('Sphinx') }}
BuildRequires: {{ py2pkg('WSME') }}
BuildRequires: {{ py2pkg('jsonschema') }}
BuildRequires: {{ py2pkg('networkx') }}
BuildRequires: {{ py2pkg('openstackdocstheme') }}
BuildRequires: {{ py2pkg('paramiko') }}
BuildRequires: {{ py2pkg('pecan') }}
BuildRequires: {{ py2pkg('pep8') }}
BuildRequires: {{ py2pkg('sphinxcontrib-httpdomain') }}
BuildRequires: {{ py2pkg('sphinxcontrib-pecanwsme') }}
BuildRequires: {{ py2pkg('yaql') }}
BuildRequires: {{ py3('Sphinx') }}
BuildRequires: {{ py3('openstackdocstheme') }}
BuildRequires: {{ py3('sphinxcontrib-httpdomain') }}
BuildRequires: {{ py3('sphinxcontrib-pecanwsme') }}
%description doc
Monitors for the Masakari service for Virtual Machine
@@ -84,42 +64,31 @@ High Availability (VMHA) service in OpenStack.
This package contains the documentation.
%package -n python-{{ pypi_name }}
%package -n python3-{{ pypi_name }}
Summary: masakari-monitors Python libraries
Requires: {{ py2pkg('Babel') }}
Requires: {{ py2pkg('iso8601') }}
Requires: {{ py2pkg('jsonschema') }}
Requires: {{ py2pkg('keystoneauth1') }}
Requires: {{ py2pkg('keystonemiddleware') }}
Requires: {{ py2pkg('python-masakariclient') }}
Requires: {{ py2pkg('microversion_parse') }}
Requires: {{ py2pkg('python-novaclient') }}
Requires: {{ py2pkg('openstacksdk') }}
Requires: {{ py2pkg('oslo.config') }}
Requires: {{ py2pkg('oslo.db') }}
Requires: {{ py2pkg('oslo.i18n') }}
Requires: {{ py2pkg('oslo.log') }}
Requires: {{ py2pkg('oslo.messaging') }}
Requires: {{ py2pkg('oslo.middleware') }}
Requires: {{ py2pkg('oslo.policy') }}
Requires: {{ py2pkg('oslo.privsep') }}
Requires: {{ py2pkg('oslo.service') }}
Requires: {{ py2pkg('oslo.utils') }}
Requires: {{ py2pkg('oslo.versionedobjects') }}
Requires: {{ py2pkg('pbr') }}
Requires: {{ py2pkg('setuptools') }}
Requires: {{ py2pkg('six') }}
Requires: {{ py2pkg('stevedore') }}
Requires: {{ py2pkg('taskflow') }}
Requires: {{ py3('Babel') }}
Requires: {{ py3('jsonschema') }}
Requires: {{ py3('keystoneauth1') }}
Requires: {{ py3('openstacksdk') }}
Requires: {{ py3('oslo.config') }}
Requires: {{ py3('oslo.i18n') }}
Requires: {{ py3('oslo.log') }}
Requires: {{ py3('oslo.middleware') }}
Requires: {{ py3('oslo.privsep') }}
Requires: {{ py3('oslo.service') }}
Requires: {{ py3('oslo.utils') }}
Requires: {{ py3('pbr') }}
Requires: {{ py3('six') }}
Requires: {{ py3('stevedore') }}
%description -n python-{{ pypi_name }}
%description -n python3-{{ pypi_name }}
Masakari is a service providing high availability for VMs in OpenStack.
This package contains the Python libraries for the monitoring components.
%package -n openstack-masakari-hostmonitor
Summary: Host monitoring component of OpenStack Masakari service
Requires: %{name} = %{version}
Requires: %{name} = %{version}-%{release}
%description -n openstack-masakari-hostmonitor
This component of the Masakari service for VM HA in OpenStack is
@@ -127,7 +96,7 @@ responsible for monitoring the health of nova-compute hypervisors.
%package -n openstack-masakari-instancemonitor
Summary: Instance monitoring component of OpenStack Masakari service
Requires: %{name} = %{version}
Requires: %{name} = %{version}-%{release}
%description -n openstack-masakari-instancemonitor
This component of the Masakari service for VM HA in OpenStack is
@@ -135,7 +104,7 @@ responsible for monitoring the health of individual VM instances.
%package -n openstack-masakari-introspectiveinstancemonitor
Summary: Instance monitoring component of OpenStack Masakari service
Requires: %{name} = %{version}
Requires: %{name} = %{version}-%{release}
%description -n openstack-masakari-introspectiveinstancemonitor
This component of the Masakari service for VM HA in OpenStack is
@@ -143,7 +112,7 @@ responsible for monitoring the health of individual VM instances.
%package -n openstack-masakari-processmonitor
Summary: Process monitoring component of OpenStack Masakari service
Requires: %{name} = %{version}
Requires: %{name} = %{version}-%{release}
%description -n openstack-masakari-processmonitor
This component of the Masakari service for VM HA in OpenStack is
@@ -152,21 +121,19 @@ running in order for the compute plane to be functional and highly
available.
%prep
%autosetup -n {{ pypi_name }}-{{upstream_version}}
%autosetup -p1 -n {{ pypi_name }}-{{upstream_version}}
%py_req_cleanup
%build
%{py2_build}
export PYTHONPATH="."
# from tox.ini's testenv:genconfig
oslo-config-generator --config-file etc/masakarimonitors/masakarimonitors-config-generator.conf
%{py3_build}
PYTHONPATH=. oslo-config-generator --config-file etc/masakarimonitors/masakarimonitors-config-generator.conf
%{__python2} setup.py build_sphinx
PBR_VERSION={{ upstream_version }} %sphinx_build -b html doc/source doc/build/html
# remove the sphinx-build leftovers
rm -rf doc/build/html/.{doctrees,buildinfo}
%install
%{py2_install}
%{py3_install}
mkdir -p %{buildroot}%{_sysconfdir}/masakarimonitors/
mkdir -p %{buildroot}%{_localstatedir}/log/masakari-monitors
@@ -177,7 +144,7 @@ install -p -D -m 644 %SOURCE2 %{buildroot}%{_unitdir}/openstack-masakari-instanc
install -p -D -m 644 %SOURCE3 %{buildroot}%{_unitdir}/openstack-masakari-processmonitor.service
install -p -D -m 644 %SOURCE5 %{buildroot}%{_unitdir}/openstack-masakari-introspectiveinstancemonitor.service
install -p -D -m 644 %SOURCE4 %{buildroot}/%{_tmpfilesdir}/masakari-monitors.conf
install -p -D -m 644 %SOURCE4 %{buildroot}/%{_tmpfilesdir}/openstack-masakari-monitors.conf
install -p -D -m 640 etc/masakarimonitors/masakarimonitors.conf.sample %{buildroot}%{_sysconfdir}/masakarimonitors/masakarimonitors.conf
install -p -D -m 640 etc/masakarimonitors/hostmonitor.conf.sample %{buildroot}%{_sysconfdir}/masakarimonitors/hostmonitor.conf
@@ -190,13 +157,7 @@ chmod +x %{buildroot}%{_bindir}/masakari-*
%openstack_pre_user_group_create masakari masakari
%post
%tmpfiles_create %{_tmpfilesdir}/masakari-monitors.conf
%check
# TESTS do not work atm
exit 0
testr init
testr run
%tmpfiles_create %{_tmpfilesdir}/openstack-masakari-monitors.conf
%post -n openstack-masakari-hostmonitor
%systemd_post openstack-masakari-hostmonitor.service
@@ -230,7 +191,7 @@ testr run
%dir %{_sysconfdir}/masakarimonitors
%config(noreplace) %attr(-, masakari, masakari) %{_sysconfdir}/masakarimonitors/masakarimonitors.conf
%dir %attr(750, masakari, masakari) %{_localstatedir}/log/masakari-monitors
%_tmpfilesdir/masakari-monitors.conf
%_tmpfilesdir/openstack-masakari-monitors.conf
%files -n openstack-masakari-hostmonitor
%config(noreplace) %attr(-, masakari, masakari) %{_sysconfdir}/masakarimonitors/hostmonitor.conf
@@ -256,8 +217,8 @@ testr run
%license LICENSE
%doc doc/build/html
%files -n python-{{ pypi_name }}
%files -n python3-{{ pypi_name }}
%license LICENSE
%{python2_sitelib}/masakari*
%{python3_sitelib}/masakari*
%changelog