python-pbr/python-pbr.spec

109 lines
3.6 KiB
RPMSpec

#
# spec file for package python-pbr
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#
# NOTE(saschpe): git invocation and pythonpath issues with testrepository
# enable testing with a build conditional (off by default):
%bcond_with test
Name: python-pbr
Version: 1.10.0
Release: 0
Summary: Python Build Reasonableness
License: Apache-2.0
Group: Development/Languages/Python
Url: http://pypi.python.org/pypi/pbr
Source: https://pypi.python.org/packages/c3/2c/63275fab26a0fd8cadafca71a3623e4d0f0ee8ed7124a5bb128853d178a7/pbr-%{version}.tar.gz
Source1: python-pbr-rpmlintrc
BuildRequires: fdupes
BuildRequires: python-devel
BuildRequires: python-pip >= 1.4
# Test requirements:
%if %{with test}
#BuildRequires: python-coverage >= 3.6
%if 0%{?suse_version} <= 1110
BuildRequires: python-discover
%endif
BuildRequires: python-fixtures >= 1.3.1
BuildRequires: python-hacking >= 0.9.2
BuildRequires: python-mock >= 1.2
BuildRequires: python-python-subunit >= 0.0.18
BuildRequires: python-six >= 1.9.0
BuildRequires: python-testrepository >= 0.0.18
BuildRequires: python-testresources >= 0.2.4
BuildRequires: python-testscenarios >= 0.4
BuildRequires: python-testtools >= 1.4.0
%endif
Requires: python-setuptools
Requires(post): update-alternatives
Requires(postun): update-alternatives
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%else
BuildArch: noarch
%endif
%description
PBR is a library to automatically do a bunch of standard
things you want in your setup.py without you having to repeat
them every time. It will set versions, process requirements
files and generate AUTHORS and ChangeLog file all from git
information.
%prep
%setup -q -n pbr-%{version}
# Get rid of ugly build-time deps that require network:
sed -i "s/, 'sphinx\.ext\.intersphinx'//" doc/source/conf.py
%build
python setup.py build
%install
python setup.py install --prefix=%{_prefix} --root=%{buildroot}
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
mv %{buildroot}%{_bindir}/pbr %{buildroot}%{_bindir}/pbr-%{py_ver}
ln -s -f %{_sysconfdir}/alternatives/pbr %{buildroot}%{_bindir}/pbr
# create a dummy target for /etc/alternatives/pbr
touch %{buildroot}%{_sysconfdir}/alternatives/pbr
%fdupes -s %{buildroot}%{python_sitelib}
%if %{with test}
%check
testr init && testr run --parallel
%endif
%post
%_sbindir/update-alternatives \
--install %{_bindir}/pbr pbr %{_bindir}/pbr-%{py_ver} 20
%preun
if [ $1 -eq 0 ] ; then
%_sbindir/update-alternatives --remove pbr %{_bindir}/pbr-%{py_ver}
fi
%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog CONTRIBUTING.rst LICENSE README.rst
%{python_sitelib}/pbr
%{python_sitelib}/pbr-%{version}-py%{py_ver}.egg-info
%{_bindir}/pbr-%{py_ver}
%{_bindir}/pbr
%ghost %{_sysconfdir}/alternatives/pbr
%changelog