File openstack-tempest.spec of Package openstack-tempest
#
# spec file for package openstack-tempest
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: openstack-tempest
Version: 30.1.0
Release: 0
Epoch: 0
Summary: The OpenStack Integration Test Suite (Tempest)
License: Apache-2.0
Group: Development/Languages/Python
URL: https://docs.openstack.org/tempest
Source0: https://files.pythonhosted.org/packages/source/t/tempest/tempest-30.1.0.tar.gz
Source1: openstack-tempest.tmpfiles
BuildRequires: openstack-macros
BuildRequires: python3-PrettyTable
BuildRequires: python3-PyYAML
BuildRequires: python3-cliff
BuildRequires: python3-debtcollector
BuildRequires: python3-defusedxml
BuildRequires: python3-fixtures
BuildRequires: python3-jsonschema
BuildRequires: python3-netaddr
BuildRequires: python3-oslo.concurrency
BuildRequires: python3-oslo.config
BuildRequires: python3-oslo.log
BuildRequires: python3-oslo.serialization
BuildRequires: python3-oslo.utils
BuildRequires: python3-paramiko
BuildRequires: python3-python-subunit
BuildRequires: python3-six
BuildRequires: python3-stestr
BuildRequires: python3-stevedore
BuildRequires: python3-testtools
BuildRequires: python3-urllib3
Requires: python3-tempest = %{epoch}:%{version}-%{release}
BuildArch: noarch
%if 0%{?suse_version}
# to be compatible with older tempest packages
Provides: openstack-tempest-test = %{epoch}:%{version}-%{release}
Obsoletes: openstack-tempest-test < %{epoch}:%{version}-%{release}
%endif
%description
Tempest is a set of integration tests to be run against a live OpenStack
cluster. Tempest has batteries of tests for OpenStack API validation,
Scenarios, and other specific tests useful in validating an OpenStack
deployment.
%package -n python3-tempest
Summary: Documentation for the OpenStack Integration Test Suite
Group: Development/Languages/Python
Requires: python3-PrettyTable
Requires: python3-PyYAML
Requires: python3-cliff
Requires: python3-debtcollector
Requires: python3-defusedxml
Requires: python3-fixtures
Requires: python3-jsonschema
Requires: python3-netaddr
Requires: python3-oslo.concurrency
Requires: python3-oslo.config
Requires: python3-oslo.log
Requires: python3-oslo.serialization
Requires: python3-oslo.utils
Requires: python3-paramiko
Requires: python3-python-subunit
Requires: python3-six
Requires: python3-stestr
Requires: python3-stevedore
Requires: python3-testtools
Requires: python3-urllib3
%description -n python3-tempest
Tempest is a set of integration tests to be run against a live OpenStack
cluster. Tempest has batteries of tests for OpenStack API validation,
Scenarios, and other specific tests useful in validating an OpenStack
deployment.
This package contains the python module.
%package doc
Summary: Documentation for the OpenStack Integration Test Suite
BuildRequires: python3-Sphinx
BuildRequires: python3-openstackdocstheme
BuildRequires: python3-sphinxcontrib-svg2pdfconverter
%description doc
Tempest is a set of integration tests to be run against a live OpenStack
cluster. Tempest has batteries of tests for OpenStack API validation,
Scenarios, and other specific tests useful in validating an OpenStack
deployment.
This package contains the documentation.
%prep
%autosetup -p1 -n tempest-30.1.0
%py_req_cleanup
%build
%{py3_build}
# generate html docs
PBR_VERSION=30.1.0 %sphinx_build -b html doc/source doc/build/html
# remove the sphinx-build leftovers
rm -rf doc/build/html/.{doctrees,buildinfo}
%install
%{py3_install}
# NOTE(toabctl): config files are installed into usr/etc/
install -d -m 755 %{buildroot}%{_sysconfdir}/tempest
mv %{buildroot}/%{_prefix}/%{_sysconfdir}/tempest/accounts.yaml.sample %{buildroot}/%{_sysconfdir}/tempest/accounts.yaml
mv %{buildroot}/%{_prefix}/%{_sysconfdir}/tempest/logging.conf.sample %{buildroot}/%{_sysconfdir}/tempest/logging.conf
mv %{buildroot}/%{_prefix}/%{_sysconfdir}/tempest/rbac-persona-accounts.yaml.sample %{buildroot}/%{_sysconfdir}/tempest/rbac-persona-accounts.yaml
mv %{buildroot}/%{_prefix}/%{_sysconfdir}/tempest/allow-list.yaml %{buildroot}/%{_sysconfdir}/tempest/allow-list.yaml
# install config
PYTHONPATH=. oslo-config-generator --config-file %{_builddir}/tempest-30.1.0/tempest/cmd/config-generator.tempest.conf --output-file %{buildroot}%{_sysconfdir}/tempest/tempest.conf
# install tmpfiles
install -D -m 644 %{SOURCE1} %{buildroot}/%_tmpfilesdir/%{name}.conf
%if 0%{?suse_version}
# to be compatible with older tempest packages
%openstack_test_package_install tempest
cp -av .stestr.conf %{buildroot}/%{_localstatedir}/lib/%{name}-test/
%endif
%post
%tmpfiles_create %{_tmpfilesdir}/%{name}.conf
%files
%license LICENSE
%doc README.rst ChangeLog
%_tmpfilesdir/%{name}.conf
%{_bindir}/tempest
%{_bindir}/skip-tracker
%{_bindir}/check-uuid
%{_bindir}/subunit-describe-calls
%dir %{_sysconfdir}/tempest
%config(noreplace) %{_sysconfdir}/tempest/tempest.conf
%config(noreplace) %{_sysconfdir}/tempest/logging.conf
%config(noreplace) %{_sysconfdir}/tempest/accounts.yaml
%config(noreplace) %{_sysconfdir}/tempest/allow-list.yaml
%config(noreplace) %{_sysconfdir}/tempest/rbac-persona-accounts.yaml
%if 0%{?suse_version}
%{_localstatedir}/lib/openstack-tempest-test
%endif
%files -n python3-tempest
%license LICENSE
%{python3_sitelib}/tempest
%{python3_sitelib}/*.egg-info
%files doc
%license LICENSE
%doc doc/build/html
%changelog