You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
182 lines
6.1 KiB
182 lines
6.1 KiB
diff --git a/connection.py b/connection.py
|
|
index b4bbb31b4f..ec17cb338d 100644
|
|
--- a/connection.py
|
|
+++ b/connection.py
|
|
@@ -31,6 +31,7 @@ else:
|
|
from urlparse import urlparse
|
|
from urllib import splitport # pylint: disable=C0412
|
|
|
|
+# pylint: disable=W0622
|
|
class ConnectionError(Exception):
|
|
pass
|
|
|
|
@@ -276,6 +277,7 @@ class PackageUpload:
|
|
text = [x[1] for x in headers.getaddrlist(prefix + '-String')]
|
|
# text is a list now, convert it to a string
|
|
text = '\n'.join(text)
|
|
+ # pylint: disable=W1505
|
|
text = base64.decodestring(text)
|
|
return text
|
|
|
|
diff --git a/rhnpush.spec b/rhnpush.spec
|
|
index 0a6da49618..aa3ba0db0d 100644
|
|
--- a/rhnpush.spec
|
|
+++ b/rhnpush.spec
|
|
@@ -5,6 +5,10 @@
|
|
%global default_py3 1
|
|
%endif
|
|
|
|
+%if ( 0%{?fedora} && 0%{?fedora} < 28 ) || ( 0%{?rhel} && 0%{?rhel} < 8 )
|
|
+%global build_py2 1
|
|
+%endif
|
|
+
|
|
%define pythonX %{?default_py3: python3}%{!?default_py3: python2}
|
|
|
|
Name: rhnpush
|
|
@@ -12,14 +16,19 @@ Summary: Package uploader for the Spacewalk or Red Hat Satellite Server
|
|
License: GPLv2
|
|
URL: https://github.com/spacewalkproject/spacewalk
|
|
Version: 5.5.110
|
|
-Release: 4%{?dist}
|
|
+Release: 5%{?dist}
|
|
Source0: https://github.com/spacewalkproject/spacewalk/archive/%{name}-%{version}.tar.gz
|
|
BuildArch: noarch
|
|
Requires: %{pythonX}-%{name} = %{version}-%{release}
|
|
BuildRequires: docbook-utils, gettext
|
|
%if 0%{?pylint_check}
|
|
+%if 0%{?build_py2}
|
|
BuildRequires: spacewalk-python2-pylint
|
|
%endif
|
|
+%if 0%{?build_py3}
|
|
+BuildRequires: spacewalk-python3-pylint
|
|
+%endif
|
|
+%endif
|
|
|
|
%description
|
|
rhnpush uploads package headers to the Spacewalk or Red Hat Satellite
|
|
@@ -27,20 +36,27 @@ servers into specified channels and allows for several other channel
|
|
management operations relevant to controlling what packages are available
|
|
per channel.
|
|
|
|
+%if 0%{?build_py2}
|
|
%package -n python2-%{name}
|
|
Summary: Package uploader for the Spacewalk or Red Hat Satellite Server
|
|
%{?python_provide:%python_provide python2-%{name}}
|
|
Requires: %{name} = %{version}-%{release}
|
|
+%if 0%{?fedora} >= 28
|
|
+Requires: python2-rpm
|
|
+BuildRequires: python2-devel
|
|
+%else
|
|
Requires: rpm-python
|
|
+BuildRequires: python-devel
|
|
+%endif
|
|
Requires: rhnlib >= 2.8.3
|
|
Requires: python2-rhn-client-tools
|
|
Requires: spacewalk-backend-libs >= 1.7.17
|
|
Requires: spacewalk-usix
|
|
BuildRequires: spacewalk-backend-libs > 1.8.33
|
|
-BuildRequires: python-devel
|
|
BuildRequires: python2-rhn-client-tools
|
|
%description -n python2-%{name}
|
|
Python 2 specific files for rhnpush.
|
|
+%endif
|
|
|
|
%if 0%{?build_py3}
|
|
%package -n python3-%{name}
|
|
@@ -53,7 +69,7 @@ Requires: python3-rhn-client-tools
|
|
Requires: python3-spacewalk-backend-libs
|
|
Requires: python3-spacewalk-usix
|
|
BuildRequires: spacewalk-backend-libs > 1.8.33
|
|
-BuildRequires: python-devel
|
|
+BuildRequires: python3-devel
|
|
BuildRequires: python3-rhn-client-tools
|
|
BuildRequires: python3-rpm-macros
|
|
%description -n python3-%{name}
|
|
@@ -69,8 +85,10 @@ make -f Makefile.rhnpush all
|
|
|
|
%install
|
|
install -d $RPM_BUILD_ROOT/%{python_sitelib}
|
|
+%if 0%{?build_py2}
|
|
make -f Makefile.rhnpush install PREFIX=$RPM_BUILD_ROOT ROOT=%{python_sitelib} \
|
|
MANDIR=%{_mandir} PYTHON_VERSION=%{python_version}
|
|
+%endif
|
|
|
|
%if 0%{?build_py3}
|
|
sed -i 's|#!/usr/bin/python|#!/usr/bin/python3|' rhnpush
|
|
@@ -87,9 +105,15 @@ ln -s rhnpush%{default_suffix} $RPM_BUILD_ROOT%{_bindir}/rhnpush
|
|
%check
|
|
%if 0%{?pylint_check}
|
|
# check coding style
|
|
+%if 0%{?build_py2}
|
|
export PYTHONPATH=$RPM_BUILD_ROOT%{python_sitelib}
|
|
spacewalk-python2-pylint $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{python_sitelib}
|
|
%endif
|
|
+%if 0%{?build_py3}
|
|
+export PYTHONPATH=$RPM_BUILD_ROOT%{python3_sitelib}
|
|
+spacewalk-python3-pylint $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{python3_sitelib}
|
|
+%endif
|
|
+%endif
|
|
|
|
%files
|
|
%{_bindir}/rhnpush
|
|
@@ -98,9 +122,11 @@ spacewalk-python2-pylint $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{python_sitel
|
|
%{_mandir}/man8/rhnpush.8*
|
|
%doc COPYING
|
|
|
|
+%if 0%{?build_py2}
|
|
%files -n python2-%{name}
|
|
%attr(755,root,root) %{_bindir}/rhnpush-%{python_version}
|
|
%{python_sitelib}/rhnpush/
|
|
+%endif
|
|
|
|
%if 0%{?build_py3}
|
|
%files -n python3-%{name}
|
|
@@ -109,6 +135,15 @@ spacewalk-python2-pylint $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{python_sitel
|
|
%endif
|
|
|
|
%changelog
|
|
+* Tue Mar 20 2018 Tomas Kasparek <tkasparek@redhat.com> 5.5.110-5
|
|
+- disable pylint warnings discovered by run on python3 (tkasparek@redhat.com)
|
|
+- run pylint 2/3 depending on environment (tkasparek@redhat.com)
|
|
+- don't build python2 subpackages on systems with default python3
|
|
+ (tkasparek@redhat.com)
|
|
+- be compliant with new packaging guidelines when requiring python2 packages
|
|
+ (tkasparek@redhat.com)
|
|
+- require python3-devel for building on python3 (tkasparek@redhat.com)
|
|
+
|
|
* Wed Mar 14 2018 Tomas Kasparek <tkasparek@redhat.com> 5.5.110-4
|
|
- build for python3 (tkasparek@redhat.com)
|
|
|
|
diff --git a/rhnpush_main.py b/rhnpush_main.py
|
|
index a4aef2f1f3..b50ec5b7b6 100755
|
|
--- a/rhnpush_main.py
|
|
+++ b/rhnpush_main.py
|
|
@@ -32,6 +32,7 @@ import os
|
|
import random
|
|
import sys
|
|
import time
|
|
+# pylint: disable=W0402
|
|
from optparse import Option, OptionParser
|
|
|
|
# pylint: disable=F0401,E0611
|
|
diff --git a/uploadLib.py b/uploadLib.py
|
|
index b712a92ce2..3aa6011b5b 100644
|
|
--- a/uploadLib.py
|
|
+++ b/uploadLib.py
|
|
@@ -754,6 +754,7 @@ def getServer(uri, proxy=None, username=None, password=None, ca_chain=None):
|
|
# pylint: disable=E1123
|
|
def hasChannelChecksumCapability(rpc_server):
|
|
""" check whether server supports getPackageChecksumBySession function"""
|
|
+ # pylint: disable=W1505
|
|
if 'rpcServerOverride' in inspect.getargspec(rhnserver.RhnServer.__init__)[0]:
|
|
server = rhnserver.RhnServer(rpcServerOverride=rpc_server)
|
|
else:
|
|
@@ -768,6 +769,7 @@ def exists_getPackageChecksumBySession(rpc_server):
|
|
# unfortunatelly we do not have capability for getPackageChecksumBySession function,
|
|
# but extended_profile in version 2 has been created just 2 months before
|
|
# getPackageChecksumBySession lets use it instead
|
|
+ # pylint: disable=W1505
|
|
if 'rpcServerOverride' in inspect.getargspec(rhnserver.RhnServer.__init__)[0]:
|
|
server = rhnserver.RhnServer(rpcServerOverride=rpc_server)
|
|
else:
|