!4 修复python-jenkins软件包功能

From: @jiangpengjuj
Reviewed-by: @georgecao
Signed-off-by: @georgecao
This commit is contained in:
openeuler-ci-bot 2021-08-20 03:13:58 +00:00 committed by Gitee
commit fbccbfb7f6
2 changed files with 75 additions and 50 deletions

10
bugfix.patch Normal file
View File

@ -0,0 +1,10 @@
diff -Nur python-jenkins-1.7.0_old/setup.py python-jenkins-1.7.0/setup.py
--- python-jenkins-1.7.0_old/setup.py 2021-08-20 10:10:28.910000000 +0800
+++ python-jenkins-1.7.0/setup.py 2020-03-04 11:06:09.000000000 +0800
@@ -1,3 +1,5 @@
import setuptools
-setuptools.setup()
+setuptools.setup(
+ setup_requires=['pbr'],
+ pbr=True)

View File

@ -1,78 +1,93 @@
%global _empty_manifest_terminate_build 0
Name: python-jenkins
Version: 1.7.0
Release: 1
Release: 2
Summary: Python bindings for the remote Jenkins API
License: BSD
URL: http://git.openstack.org/cgit/openstack/python-jenkins
Source0: https://files.pythonhosted.org/packages/85/8e/52223d8eebe35a3d86579df49405f096105328a9d80443eaed809f6c374f/python-jenkins-1.7.0.tar.gz
BuildArch: noarch
Patch1: bugfix.patch
Requires: python3-six
Requires: python3-pbr
Requires: python3-multi-key-dict
Requires: python3-requests
BuildRequires: python3-sphinx
BuildArch: noarch
%description
Python Jenkins is a python wrapper for the REST API which aims to provide a more
conventionally pythonic way of controlling a Jenkins server.
Python Jenkins is a library for the remote API of the Jenkins continuous
integration server. It is useful for creating and managing jobs as well as
build nodes.
%package -n python3-jenkins
Summary: Python bindings for the remote Jenkins API
Provides: python-jenkins
BuildRequires: python3-devel
BuildRequires: python3-setuptools
Summary: %{summary}
BuildRequires: python3-devel
BuildRequires: python3-kerberos
BuildRequires: python3-mock
BuildRequires: python3-multi_key_dict
BuildRequires: python3-nose
BuildRequires: python3-pbr >= 0.8.2
BuildRequires: python3-requests
BuildRequires: python3-requests-mock
BuildRequires: python3-setuptools
BuildRequires: python3-six >= 1.3.0
BuildRequires: python3-testscenarios
BuildRequires: python3-testtools
%{?python_provide:%python_provide python3-jenkins}
%if %{undefined __pythondist_requires}
Requires: python3-multi_key_dict
Requires: python3-pbr >= 0.8.2
Requires: python3-requests
Requires: python3-six >= 1.3.0
%endif
Recommends: python3-kerberos
%description -n python3-jenkins
Python Jenkins provides a higher-level API containing a number of convenience functions.
Python Jenkins is a library for the remote API of the Jenkins continuous
integration server. It is useful for creating and managing jobs as well as
build nodes.
%package help
Summary: Development documents and examples for python-jenkins
Provides: python3-jenkins-doc
%description help
Python Jenkins provide a more conventionally pythonic way of controlling
a Jenkins server.
%prep
%autosetup -n python-jenkins-1.7.0
%autosetup -n python-jenkins-1.7.0 -p1
# Remove env from __init__.py
sed -i '1{s|^#!/usr/bin/env python||}' jenkins/__init__.py
%build
export PBR_VERSION=%{version}
%py3_build
PYTHONDONTWRITEBYTECODE=1 \
PYTHONPATH=$PWD \
%make_build -C doc html man
rm doc/build/html/.buildinfo
%install
export PBR_VERSION=%{version}
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-jenkins -f filelist.lst
%dir %{python3_sitelib}/*
install -D -m0644 -p doc/build/man/pythonjenkins.1 %{buildroot}%{_mandir}/man1/pythonjenkins.1
%check
%{__python3} -m testtools.run discover tests
%files -n python3-jenkins
%doc README.rst doc/build/html
%license COPYING
%{python3_sitelib}/jenkins/
%{python3_sitelib}/python_jenkins-%{version}-py%{python3_version}.egg-info/
%{_mandir}/man1/pythonjenkins.1.*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri Aug 20 2021 Pengju Jiang <jiangpengju2@huawei.com> - 1.7.0-2
- bugfix-of-gcc-10.patch
* Tue Jul 27 2021 Python_Bot <Python_Bot@openeuler.org> - 1.7.0-1
- Package Spec generated