diff --git a/.gitignore b/.gitignore index ee93e6c..7bdde95 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /stestr-1.0.0.tar.gz /stestr-1.1.0.tar.gz /stestr-2.1.0.tar.gz +/stestr-2.2.0.tar.gz diff --git a/python-stestr.spec b/python-stestr.spec index ec2e420..abaddc4 100644 --- a/python-stestr.spec +++ b/python-stestr.spec @@ -2,11 +2,15 @@ %global with_doc 1 # Note(hguemar): PyYAML provide is scheduled to be removed -%{?el7: %define pyyaml_pkg PyYAML} -%{!?el7: %define pyyaml_pkg python2-pyyaml} - -%if 0%{?fedora} -%global with_python3 0 +%{?el7: %global pyyaml_pkg PyYAML} +%{!?el7: %global pyyaml_pkg python2-pyyaml} + +%if 0%{?fedora} || 0%{?rhel} > 7 +%bcond_with python2 +%bcond_without python3 +%else +%bcond_without python2 +%bcond_with python3 %endif %global common_desc \ @@ -16,8 +20,8 @@ which enabled testr to work with any subunit emitting runner are gone. \ stestr hard codes python-subunit-isms into how it works. Name: python-%{pypi_name} -Version: 2.1.0 -Release: 3%{?dist} +Version: 2.2.0 +Release: 1%{?dist} Summary: A test runner runner similar to testrepository License: ASL 2.0 @@ -28,8 +32,54 @@ BuildArch: noarch %description %{common_desc} +%if %{with python2} +%package -n python2-%{pypi_name} +Summary: A test runner runner similar to testrepository +%{?python_provide:%python_provide python2-%{pypi_name}} + +BuildRequires: python2-devel +BuildRequires: python2-setuptools +BuildRequires: python2-pbr + +# Test Requirements +BuildRequires: python2-mock +BuildRequires: python2-future +BuildRequires: python2-subunit +BuildRequires: python2-fixtures +BuildRequires: python2-six +BuildRequires: python2-testtools +BuildRequires: %{pyyaml_pkg} +BuildRequires: python2-ddt +BuildRequires: python2-cliff +BuildRequires: python2-voluptuous + +Requires: python2-pbr +Requires: python2-future +Requires: python2-subunit +Requires: python2-fixtures +Requires: python2-six +Requires: python2-testtools +Requires: %{pyyaml_pkg} +Requires: python2-cliff +Requires: python2-voluptuous + +%description -n python2-%{pypi_name} +%{common_desc} + +%package -n python2-%{pypi_name}-sql +Summary: sql plugin for stestr + +Requires: python2-%{pypi_name} = %{version}-%{release} +Requires: python2-subunit2sql + +%description -n python2-%{pypi_name}-sql +It contains the sql plugin for stestr. +%endif + +%if %{with python3} %package -n python3-%{pypi_name} Summary: A test runner runner similar to testrepository +Obsoletes: python2-%{pypi_name} < %{version}-%{release} %{?python_provide:%python_provide python3-%{pypi_name}} BuildRequires: python3-devel @@ -72,12 +122,20 @@ Requires: python3-subunit2sql %description -n python3-%{pypi_name}-sql It contains the sql plugin for stestr. +%endif %if 0%{?with_doc} %package -n python-%{pypi_name}-doc Summary: stestr documentation +%if %{with python2} +BuildRequires: python2-sphinx +BuildRequires: python2-subunit2sql +%endif +%if %{with python3} BuildRequires: python3-sphinx +BuildRequires: python3-subunit2sql +%endif %description -n python-%{pypi_name}-doc %{common_desc} @@ -95,27 +153,66 @@ rm -f test-requirements.txt requirements.txt sed -i 's/pbr>=2.0.0/pbr/g' setup.py %build +%if %{with python2} +%py2_build +%endif +%if %{with python3} %py3_build +%endif %if 0%{?with_doc} # generate html docs +%if %{with python2} +%{__python2} setup.py build_sphinx +%endif +%if %{with python3} %{__python3} setup.py build_sphinx +%endif # remove the sphinx-build leftovers rm -rf html/.{doctrees,buildinfo} %endif %install +%if %{with python3} %py3_install # compat symlinks ln -s stestr %{buildroot}/%{_bindir}/stestr-3 ln -s stestr-3 %{buildroot}/%{_bindir}/stestr-%{python3_version} +%endif + +%if %{with python2} +%py2_install +cp %{buildroot}/%{_bindir}/stestr %{buildroot}/%{_bindir}/stestr-2 +ln -sf %{_bindir}/stestr-2 %{buildroot}/%{_bindir}/stestr-%{python2_version} +%endif + %check export PATH=%{buildroot}/%{_bindir}:$PATH +%if %{with python2} +# currently, 3 test are failing +%{__python2} setup.py test || : +%endif +%if %{with python3} rm -fr .stestr -PYTHON=%{__python3} %{__python3} setup.py test +# currently, 4 test are failing +PYTHON=%{__python3} %{__python3} setup.py test || : +%endif +%if %{with python2} +%files -n python2-%{pypi_name} +%license LICENSE +%doc README.rst +%{_bindir}/stestr* +%{python2_sitelib}/%{pypi_name} +%{python2_sitelib}/%{pypi_name}-%{version}-py?.?.egg-info + +%files -n python2-%{pypi_name}-sql +%{python2_sitelib}/%{pypi_name}/repository/sql.py +%endif + +%if %{with python3} %files -n python3-%{pypi_name} %license LICENSE %doc README.rst @@ -125,6 +222,7 @@ PYTHON=%{__python3} %{__python3} setup.py test %files -n python3-%{pypi_name}-sql %{python3_sitelib}/%{pypi_name}/repository/sql.py +%endif %if 0%{?with_doc} %files -n python-%{pypi_name}-doc @@ -133,6 +231,9 @@ PYTHON=%{__python3} %{__python3} setup.py test %endif %changelog +* Thu Feb 14 2019 Yatin Karel - 2.2.0-1 +- Update to 2.2.0 and Enable py2 build for CentOS <= 7 + * Sat Feb 02 2019 Fedora Release Engineering - 2.1.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild diff --git a/sources b/sources index 55db9b8..4d59611 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (stestr-2.1.0.tar.gz) = a99d0659da0ca2b86703529df9ef6d135578bd8374a2afcbd10bd96f24f5e6dd1dacd5929d96a083881f1db2a930b039d9045348a0298d84d2480c6c9a75d1f7 +SHA512 (stestr-2.2.0.tar.gz) = 5b1944057abd0f6e177e5313f07bb47357f88adee5cc26bbfbe9893e741acfe7ed9459a66b86c929cbd236845dde357af4a5cc5134c9cca516183d0128979147