Hello community,
here is the log from the commit of package python-azure-agent for
openSUSE:Factory checked in at 2018-02-16 21:44:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-azure-agent (Old)
and /work/SRC/openSUSE:Factory/.python-azure-agent.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-azure-agent"
Fri Feb 16 21:44:22 2018 rev:7 rq:577091 version:2.2.18
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-azure-agent/python-azure-agent.changes
2018-01-10 23:38:43.186024952 +0100
+++
/work/SRC/openSUSE:Factory/.python-azure-agent.new/python-azure-agent.changes
2018-02-16 21:44:24.199669734 +0100
@@ -1,0 +2,6 @@
+Thu Feb 8 18:53:50 UTC 2018 - [email protected]
+
+- Add 0001-Obtain-platform-information-in-Python-version-depend.patch
+ to fix build on distribution with Python 3.6 and later (boo#997614)
+
+-------------------------------------------------------------------
New:
----
0001-Obtain-platform-information-in-Python-version-depend.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-azure-agent.spec ++++++
--- /var/tmp/diff_new_pack.qzZkBm/_old 2018-02-16 21:44:24.947642758 +0100
+++ /var/tmp/diff_new_pack.qzZkBm/_new 2018-02-16 21:44:24.951642614 +0100
@@ -27,6 +27,7 @@
Patch1: agent-no-auto-update.patch
Patch3: paa_fix_driver_install_detect.patch
Patch4: paa_rdma_install_proper_driver.patch
+Patch5: 0001-Obtain-platform-information-in-Python-version-depend.patch
BuildRequires: dos2unix
BuildRequires: distribution-release
@@ -36,6 +37,7 @@
%endif
%if 0%{?suse_version} && 0%{?suse_version} > 1315
BuildRequires: python3-devel
+BuildRequires: python3-distro
BuildRequires: python3-mock
BuildRequires: python3-pytest
BuildRequires: python3-setuptools
@@ -63,6 +65,7 @@
Requires: openssl
Requires: pwdutils
%if 0%{?suse_version} && 0%{?suse_version} > 1315
+Requires: python3-distro
Requires: python3-pyasn1
Requires: python3-xml
%else
@@ -116,6 +119,7 @@
%patch1
%patch3
%patch4
+%patch5 -p1
%build
%if 0%{?suse_version} && 0%{?suse_version} > 1315
++++++ 0001-Obtain-platform-information-in-Python-version-depend.patch ++++++
>From 58ee33f1651d09f00a441ff4317cb1151e554ea5 Mon Sep 17 00:00:00 2001
From: Robert Schweikert <[email protected]>
Date: Thu, 8 Feb 2018 13:11:21 -0500
Subject: [PATCH] - Obtain platform information in Python version dependent way
+ The platform module has deprecated functionality in Python 3.5 and
the functionality will be removed in 3.7. For Python versions 3.5 and
greater depend on the distro module to obtain linux distribution
information
---
azurelinuxagent/common/version.py | 28 ++++++++++++++++++++++------
setup.py | 7 ++++++-
2 files changed, 28 insertions(+), 7 deletions(-)
diff --git a/azurelinuxagent/common/version.py
b/azurelinuxagent/common/version.py
index f743f11..713d82e 100644
--- a/azurelinuxagent/common/version.py
+++ b/azurelinuxagent/common/version.py
@@ -20,6 +20,9 @@ import re
import platform
import sys
+if float(sys.version[:3]) >= 3.5:
+ import distro
+
import azurelinuxagent.common.conf as conf
import azurelinuxagent.common.utils.fileutil as fileutil
from azurelinuxagent.common.utils.flexible_version import FlexibleVersion
@@ -80,14 +83,27 @@ def get_distro():
elif 'OpenBSD' in platform.system():
release = re.sub('\-.*\Z', '', ustr(platform.release()))
osinfo = ['openbsd', release, '', 'openbsd']
- elif 'linux_distribution' in dir(platform):
- supported = platform._supported_dists + ('alpine',)
- osinfo = list(platform.linux_distribution(full_distribution_name=0,
- supported_dists=supported))
- full_name = platform.linux_distribution()[0].strip()
+ elif 'Linux' in platform.system():
+ # platform.linux_distribution and platform.dist deprecated in
+ # Python 3.5 and removed in Python 3.7
+ if float(sys.version[:3]) >= 3.5:
+ platform_module = distro
+ osinfo = list(distro.linux_distribution(full_distribution_name=0))
+ else:
+ platform_module = platform
+ supported = platform._supported_dists + ('alpine',)
+ osinfo = list(platform.linux_distribution(
+ full_distribution_name=0,
+ supported_dists=supported
+ ))
+ full_name = platform_module.linux_distribution()[0].strip()
osinfo.append(full_name)
else:
- osinfo = platform.dist()
+ try:
+ # dist() removed in Python 3.7
+ osinfo = platform.dist()
+ except:
+ osinfo = ('UNKNOWN', 'FFFF', '')
# The platform.py lib has issue with detecting oracle linux distribution.
# Merge the following patch provided by oracle as a temporary fix.
diff --git a/setup.py b/setup.py
index f59f829..4663169 100755
--- a/setup.py
+++ b/setup.py
@@ -26,6 +26,7 @@ from azurelinuxagent.common.osutil import get_osutil
import setuptools
from setuptools import find_packages
from setuptools.command.install import install as _install
+import sys
root_dir = os.path.dirname(os.path.abspath(__file__))
os.chdir(root_dir)
@@ -131,7 +132,7 @@ def get_data_files(name, version, fullname):
# Ubuntu15.04+ uses systemd
set_systemd_files(data_files,
src=["init/ubuntu/walinuxagent.service"])
- elif name == 'suse':
+ elif name == 'suse' or name == 'opensuse':
set_bin_files(data_files)
set_conf_files(data_files, src=["config/suse/waagent.conf"])
set_logrotate_files(data_files)
@@ -198,6 +199,9 @@ class install(_install):
osutil.stop_agent_service()
osutil.start_agent_service()
+requires = []
+if float(sys.version[:3]) >= 3.5:
+ requires = ['distro']
setuptools.setup(
name=AGENT_NAME,
@@ -209,6 +213,7 @@ setuptools.setup(
url='https://github.com/Azure/WALinuxAgent',
license='Apache License Version 2.0',
packages=find_packages(exclude=["tests"]),
+ install_requires=requires,
py_modules=["__main__"],
cmdclass={
'install': install
--
2.13.6