import WALinuxAgent-2.2.49.2-1.el8

This commit is contained in:
CentOS Sources 2020-11-26 14:09:50 +00:00 committed by Andrew Lukoshko
commit 36e8a2237e
5 changed files with 511 additions and 0 deletions

1
.WALinuxAgent.metadata Normal file
View File

@ -0,0 +1 @@
3c11701ed7b3d9dc76f521eb9519c3f1ce8a24b8 SOURCES/WALinuxAgent-2.2.49.2.tar.gz

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
SOURCES/WALinuxAgent-2.2.49.2.tar.gz

View File

@ -0,0 +1,212 @@
From 18257d0baf1acde7522c1bf7d10e0a588d974431 Mon Sep 17 00:00:00 2001
From: Miroslav Rezanina <mrezanin@redhat.com>
Date: Thu, 6 Oct 2016 12:25:35 +0200
Subject: Add inital redhat build support
Rebase notes (2.2.32):
- Fix license text
Rebase notes (2.2.26):
- update to RHEL 8 build
- Do not use INSTALED_FILES for %files
Rebase notes (2.2.10):
- switched to sha256
- added .gitpublish profile
Rebase notes (2.2.46):
- added waagent-extn.logrotate
Merged patches (2.2.45):
- df29beb Switch from platform-python to python36
- 6749108 Stop packaging legacy waagent2.0
Merged patches (2.2.32):
- ce36fd9 Use Python3
- 952c830 Remove FIPS setting from the default config
- cc9df73 Switch hardcoded python3 shebangs into the %%{__python3} macro
- 66b6f8c Use correct macro for waagent.service
- 1b15ada Switch to platform-python in systemd unit file
- 59f682b Use sys.executable to find system python
Merged patches (2.2.49):
- 3a23336 Mark logrotate configs with %config(noreplace)
---
.gitignore | 1 +
.gitpublish | 8 +
azurelinuxagent/ga/update.py | 12 +-
bin/waagent | 2 +-
bin/waagent2.0 | 2 +-
init/arch/waagent.service | 2 +-
init/clearlinux/waagent.service | 2 +-
init/suse/waagent | 2 +-
init/waagent.service | 2 +-
makepkg.py | 2 +-
redhat/.gitignore | 1 +
redhat/Makefile | 72 +++++++
redhat/Makefile.common | 37 ++++
redhat/WALinuxAgent.spec.template | 206 +++++++++++++++++++
redhat/rpmbuild/BUILD/.gitignore | 2 +
redhat/rpmbuild/RPMS/.gitignore | 2 +
redhat/rpmbuild/SOURCES/.gitignore | 2 +
redhat/rpmbuild/SPECS/.gitignore | 2 +
redhat/rpmbuild/SRPMS/.gitignore | 2 +
redhat/scripts/frh.py | 27 +++
redhat/scripts/git-backport-diff | 327 ++++++++++++++++++++++++++++++
redhat/scripts/git-compile-check | 215 ++++++++++++++++++++
redhat/scripts/process-patches.sh | 79 ++++++++
redhat/scripts/tarball_checksum.sh | 3 +
setup.py | 2 +-
tests/data/ext/sample_ext-1.3.0/sample.py | 2 +-
26 files changed, 1002 insertions(+), 14 deletions(-)
create mode 100644 .gitpublish
create mode 100644 redhat/.gitignore
create mode 100644 redhat/Makefile
create mode 100644 redhat/Makefile.common
create mode 100644 redhat/WALinuxAgent.spec.template
create mode 100644 redhat/rpmbuild/BUILD/.gitignore
create mode 100644 redhat/rpmbuild/RPMS/.gitignore
create mode 100644 redhat/rpmbuild/SOURCES/.gitignore
create mode 100644 redhat/rpmbuild/SPECS/.gitignore
create mode 100644 redhat/rpmbuild/SRPMS/.gitignore
create mode 100755 redhat/scripts/frh.py
create mode 100755 redhat/scripts/git-backport-diff
create mode 100755 redhat/scripts/git-compile-check
create mode 100755 redhat/scripts/process-patches.sh
create mode 100755 redhat/scripts/tarball_checksum.sh
diff --git a/azurelinuxagent/ga/update.py b/azurelinuxagent/ga/update.py
index 6fec60e..d2a80ab 100644
--- a/azurelinuxagent/ga/update.py
+++ b/azurelinuxagent/ga/update.py
@@ -87,8 +87,11 @@ def get_update_handler():
def get_python_cmd():
- major_version = platform.python_version_tuple()[0]
- return "python" if int(major_version) <= 2 else "python{0}".format(major_version)
+ if sys.executable:
+ return sys.executable
+ else:
+ major_version = platform.python_version_tuple()[0]
+ return "python" if int(major_version) <= 2 else "python{0}".format(major_version)
class UpdateHandler(object):
@@ -152,9 +155,8 @@ class UpdateHandler(object):
# Launch the correct Python version for python-based agents
cmds = textutil.safe_shlex_split(agent_cmd)
- if cmds[0].lower() == "python":
- cmds[0] = get_python_cmd()
- agent_cmd = " ".join(cmds)
+ cmds[0] = get_python_cmd()
+ agent_cmd = " ".join(cmds)
self._evaluate_agent_health(latest_agent)
diff --git a/bin/waagent b/bin/waagent
index 60cdf56..0443ecb 100755
--- a/bin/waagent
+++ b/bin/waagent
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/python3.6
#
# Azure Linux Agent
#
diff --git a/bin/waagent2.0 b/bin/waagent2.0
index 3473267..762d211 100644
--- a/bin/waagent2.0
+++ b/bin/waagent2.0
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
#
# Azure Linux Agent
#
diff --git a/init/arch/waagent.service b/init/arch/waagent.service
index d426eb2..ff1ebab 100644
--- a/init/arch/waagent.service
+++ b/init/arch/waagent.service
@@ -8,7 +8,7 @@ ConditionPathExists=/etc/waagent.conf
[Service]
Type=simple
-ExecStart=/usr/bin/python -u /usr/bin/waagent -daemon
+ExecStart=/usr/bin/python3 -u /usr/bin/waagent -daemon
Restart=always
RestartSec=5
diff --git a/init/clearlinux/waagent.service b/init/clearlinux/waagent.service
index 9afee45..c29fc1b 100644
--- a/init/clearlinux/waagent.service
+++ b/init/clearlinux/waagent.service
@@ -8,7 +8,7 @@ ConditionPathExists=/usr/share/defaults/waagent/waagent.conf
[Service]
Type=simple
-ExecStart=/usr/bin/python -u /usr/bin/waagent -daemon
+ExecStart=/usr/bin/python3 -u /usr/bin/waagent -daemon
Restart=always
RestartSec=5
diff --git a/init/suse/waagent b/init/suse/waagent
index b77b0fa..317e89e 100755
--- a/init/suse/waagent
+++ b/init/suse/waagent
@@ -34,7 +34,7 @@
# Description: Start the MicrosoftAzureLinuxAgent
### END INIT INFO
-PYTHON=/usr/bin/python
+PYTHON=/usr/bin/python3
WAZD_BIN=/usr/sbin/waagent
WAZD_CONF=/etc/waagent.conf
WAZD_PIDFILE=/var/run/waagent.pid
diff --git a/init/waagent.service b/init/waagent.service
index e91f143..99f3183 100644
--- a/init/waagent.service
+++ b/init/waagent.service
@@ -8,7 +8,7 @@ ConditionPathExists=/etc/waagent.conf
[Service]
Type=simple
-ExecStart=/usr/bin/python -u /usr/sbin/waagent -daemon
+ExecStart=/usr/bin/python3.6 -u /usr/sbin/waagent -daemon
Restart=always
RestartSec=5
diff --git a/makepkg.py b/makepkg.py
index 52e0eae..51c263c 100755
--- a/makepkg.py
+++ b/makepkg.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
import glob
import os
diff --git a/setup.py b/setup.py
index 372807f..f0798ff 100755
--- a/setup.py
+++ b/setup.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
#
# Microsoft Azure Linux Agent setup.py
#
diff --git a/tests/data/ext/sample_ext-1.3.0/sample.py b/tests/data/ext/sample_ext-1.3.0/sample.py
index 74bd839..bf6ed99 100755
--- a/tests/data/ext/sample_ext-1.3.0/sample.py
+++ b/tests/data/ext/sample_ext-1.3.0/sample.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
import os
--
1.8.3.1

View File

@ -0,0 +1,84 @@
From a5af5690f0df9cb12fc46f8f14e4beba7c3aeae8 Mon Sep 17 00:00:00 2001
From: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: Thu, 13 Aug 2020 08:43:58 +0200
Subject: Fix handling of gen2 disks with udev rules (#1954)
RH-Author: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-id: <20200810082500.479999-1-vkuznets@redhat.com>
Patchwork-id: 98129
O-Subject: [RHEL8.3 WALinuxAgent PATCH] Fix handling of gen2 disks with udev rules (#1954)
Bugzilla: 1859037
RH-Acked-by: Cathy Avery <cavery@redhat.com>
RH-Acked-by: Mohammed Gamal <mgamal@redhat.com>
commit d33f1f810728dbe4e2891149936195d1ec7aaa27
Author: Thomas Stringer <thstring@microsoft.com>
Date: Mon Jul 20 14:24:22 2020 -0400
Fix handling of gen2 disks with udev rules (#1954)
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
---
config/66-azure-storage.rules | 40 +++++++++++++++++++++++-----------------
1 file changed, 23 insertions(+), 17 deletions(-)
diff --git a/config/66-azure-storage.rules b/config/66-azure-storage.rules
index 5fb3693..cf94807 100644
--- a/config/66-azure-storage.rules
+++ b/config/66-azure-storage.rules
@@ -1,28 +1,34 @@
-ACTION=="add|change", SUBSYSTEM=="block", ENV{ID_VENDOR}=="Msft", ENV{ID_MODEL}=="Virtual_Disk", GOTO="azure_disk"
-GOTO="azure_end"
+# Azure specific rules.
+ACTION!="add|change", GOTO="walinuxagent_end"
+SUBSYSTEM!="block", GOTO="walinuxagent_end"
+ATTRS{ID_VENDOR}!="Msft", GOTO="walinuxagent_end"
+ATTRS{ID_MODEL}!="Virtual_Disk", GOTO="walinuxagent_end"
-LABEL="azure_disk"
-# Root has a GUID of 0000 as the second value
-# The resource/resource has GUID of 0001 as the second value
-ATTRS{device_id}=="?00000000-0000-*", ENV{fabric_name}="root", GOTO="azure_names"
-ATTRS{device_id}=="?00000000-0001-*", ENV{fabric_name}="resource", GOTO="azure_names"
-ATTRS{device_id}=="?00000001-0001-*", ENV{fabric_name}="BEK", GOTO="azure_names"
-# Wellknown SCSI controllers
+# Match the known ID parts for root and resource disks.
+ATTRS{device_id}=="?00000000-0000-*", ENV{fabric_name}="root", GOTO="wa_azure_names"
+ATTRS{device_id}=="?00000000-0001-*", ENV{fabric_name}="resource", GOTO="wa_azure_names"
+
+# Gen2 disk.
ATTRS{device_id}=="{f8b3781a-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi0", GOTO="azure_datadisk"
+# Create symlinks for data disks attached.
ATTRS{device_id}=="{f8b3781b-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi1", GOTO="azure_datadisk"
ATTRS{device_id}=="{f8b3781c-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi2", GOTO="azure_datadisk"
ATTRS{device_id}=="{f8b3781d-1e82-4818-a1c3-63d806ec15bb}", ENV{fabric_scsi_controller}="scsi3", GOTO="azure_datadisk"
-GOTO="azure_end"
+GOTO="walinuxagent_end"
-# Retrieve LUN number for datadisks
+# Parse out the fabric n ame based off of scsi indicators.
LABEL="azure_datadisk"
-ENV{DEVTYPE}=="partition", PROGRAM="/bin/sh -c 'readlink /sys/class/block/%k/../device|cut -d: -f4'", ENV{fabric_name}="$env{fabric_scsi_controller}/lun$result", GOTO="azure_names"
-PROGRAM="/bin/sh -c 'readlink /sys/class/block/%k/device|cut -d: -f4'", ENV{fabric_name}="$env{fabric_scsi_controller}/lun$result", GOTO="azure_names"
-GOTO="azure_end"
+ENV{DEVTYPE}=="partition", PROGRAM="/bin/sh -c 'readlink /sys/class/block/%k/../device|cut -d: -f4'", ENV{fabric_name}="$env{fabric_scsi_controller}/lun$result"
+ENV{DEVTYPE}=="disk", PROGRAM="/bin/sh -c 'readlink /sys/class/block/%k/device|cut -d: -f4'", ENV{fabric_name}="$env{fabric_scsi_controller}/lun$result"
+
+ENV{fabric_name}=="scsi0/lun0", ENV{fabric_name}="root"
+ENV{fabric_name}=="scsi0/lun1", ENV{fabric_name}="resource"
+# Don't create a symlink for the cd-rom.
+ENV{fabric_name}=="scsi0/lun2", GOTO="walinuxagent_end"
-# Create the symlinks
-LABEL="azure_names"
+# Create the symlinks.
+LABEL="wa_azure_names"
ENV{DEVTYPE}=="disk", SYMLINK+="disk/azure/$env{fabric_name}"
ENV{DEVTYPE}=="partition", SYMLINK+="disk/azure/$env{fabric_name}-part%n"
-LABEL="azure_end"
+LABEL="walinuxagent_end"
--
1.8.3.1

213
SPECS/WALinuxAgent.spec Normal file
View File

@ -0,0 +1,213 @@
Summary: Microsoft Azure Linux Agent
Name: WALinuxAgent
Version: 2.2.49.2
Release: 1%{?dist}
License: ASL 2.0
Group: Development/Libraries
Url: https://github.com/Azure/WALinuxAgent
Source0: WALinuxAgent-2.2.49.2.tar.gz
BuildArch: noarch
Patch0001: 0001-Add-inital-redhat-build-support.patch
Patch0002: 0002-Fix-handling-of-gen2-disks-with-udev-rules-1954.patch
# rhel requirements
BuildRequires: python3-devel
BuildRequires: python3-setuptools
Requires: openssh
Requires: openssh-server
Requires: openssl
Requires: parted
Requires: python3-pyasn1
Requires: python36
BuildRequires: systemd
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description
The Azure Linux Agent supports the provisioning and running of Linux
VMs in the Azure cloud. This package should be installed on Linux disk
images that are built to run in the Azure environment.
%prep
%setup -q
%patch0001 -p1
%patch0002 -p1
%build
%py3_build
%install
%{__python3} setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES
rm -f %{buildroot}%{_sbindir}/waagent2.0
%clean
rm -rf $RPM_BUILD_ROOT
%post
%systemd_post waagent.service
%preun
%systemd_preun waagent.service
%postun
%systemd_postun_with_restart waagent.service
%files
%defattr(-,root,root)
%{python3_sitelib}/*
%config(noreplace) %{_sysconfdir}/waagent.conf
%config(noreplace) %{_sysconfdir}/logrotate.d/waagent.logrotate
%config(noreplace) %{_sysconfdir}/logrotate.d/waagent-extn.logrotate
%{_sbindir}/waagent
%{_unitdir}/waagent.service
/etc/udev/rules.d/66-azure-storage.rules
/etc/udev/rules.d/99-azure-product-uuid.rules
%changelog
* Wed Nov 18 2020 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.49.2-1.el8
- Rebase to 2.2.49.2 [bz#1896907]
- Resolves: bz#1896907
([Azure] Rebase WALinuxAgent to 2.2.49)
* Thu Aug 13 2020 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.46-8.el8
- wla-Fix-handling-of-gen2-disks-with-udev-rules-1954.patch [bz#1859037]
- Resolves: bz#1859037
([Azure][WALA]Cannot create /dev/disk/azure/resource softlinks in Gen2 VM)
* Wed Jun 10 2020 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.46-7.el8
- wla-Mark-logrotate-configs-with-config-noreplace.patch [bz#1838254]
- Resolves: bz#1838254
([Azure]WALinuxAgent RPM update clobbers waagent.logrotate log rotation changes)
* Tue May 26 2020 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.46-6.el8
- wala-Update-Provisioning-options-1853.patch [bz#1827792]
- Resolves: bz#1822882
([Azure][RHEL-8]Some parameter changes are not in waagent.conf)
* Thu Apr 09 2020 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.46-5.el8
- Rebase to 2.2.46 [bz#1791069]
- Resolves: bz#1791069
([Azure][RHEL-8.3]Ask to increase the WALA version available for RHEL 8.0 to 2.2.46)
* Wed Jun 26 2019 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.32-3.el8
- wla-Switch-from-platform-python-to-python36.patch [bz#1720373]
- wla-Stop-packaging-legacy-waagent2.0.patch [bz#1720373]
- Resolves: bz#1720373
([RHEL 8.1] [Azure] Change WALinuxAgent spec to depend on Python3.6 package)
* Tue Apr 30 2019 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 2.2.32-2.el8
- wla-Add-fixes-for-handling-swap-file-and-other-nit-fixes.patch [bz#1684181 bz#1688276]
- Resolves: bz#1684181
(CVE-2019-0804 WALinuxAgent: swapfile created with weak permissions)
- Resolves: bz#1688276
(CVE-2019-0804 WALinuxAgent: swapfile created with weak permissions [rhel-8])
* Fri Dec 14 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.32-1.el8
- Rebase to 2.2.32 [bz#1639498]
- Resolves: bz#1639498]
(walinuxagent 2.2.32 packaging request for RHEL 8)
* Tue Oct 23 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.26-6.el8
- wala-Use-sys.executable-to-find-system-python.patch [bz#1639775]
- Resolves: bz#1639775
(WALinuxAgent: Systemd unit file will fail to execute)
* Mon Oct 22 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.26-5.el8
- wala-Switch-to-platform-python-in-systemd-unit-file.patch [bz#1639775]
- Resolves: bz#1639775
(WALinuxAgent: Systemd unit file will fail to execute)
* Wed Aug 29 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.26-4.el8
- Fix unit file location [bz#1637545]
- Resolves: bz#1637545
(Wrong macro used for systemd unit file location)
* Wed Jul 04 2018 Tomas Orsava <torsava@redhat.com> - 2.2.26-3
- Switch hardcoded python3 shebangs into the %%{__python3} macro
* Tue Jul 03 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.26-2.el8
- Include 7.6 patches
* Tue Jul 03 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.26-1.el7
- Rebase to 2.2.26 [bz#1571523]
- Resolves: bz#1571523
(Rebase WALinuxAgent in RHEL-8.0)
* Thu May 03 2018 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.18-2.el7
- wa-Add-show-configuration-option.patch [bz#1508340]
- Resolves: bz#1508340
([WALA] WALA usage prompt lack of " waagent -show-configuration")
* Tue Oct 10 2017 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.18-1.el7
- Rebase to 2.2.18 [bz#1491873]
- Resolves: bz#1491873
([WALA]Request to package WALA 2.2.18 into RHEL 7 Repo)
* Tue Jul 04 2017 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.14-1.el7
- Rebase to 2.2.14 [bz#1451172]
- wla-Remove-FIPS-setting-from-the-default-config.patch [bz#1467553]
- Resolves: bz#1451172
([WALA] Request to package WALA 2.2.14 into RHEL 7 Repo)
- Resolves: bz#1467553
([WALA] Remove FIPS from default config in WALA-2.2.14)
* Wed Apr 26 2017 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.10-1.el7
- Rebase to 2.2.10 [bz#1443425]
- Resolves: bz#1443425
([WALA]Request to package WALA 2.2.10 into RHEL 7 Repo)
* Wed Apr 19 2017 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.4-2.el7
- Enable AutoUpdate by default [bz#1434933]
- Resolves: bz#1434933
([WALA][RHEL-7] Enable AutoUpdate by default)
* Wed Mar 01 2017 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.4-1.el7
- Rebase to 2.2.4 [bz#1419201]
- resolves: bz#1419201
WALA 2.2.4
* Mon Jan 16 2017 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.0-4.el7
- agent-RHEL-7-hostname-533.patch [bz#1413674]
- agent-fix-for-hostnamectl-534.patch [bz#1413674]
- Resolves: bz#1413674
([WALA] Fail to send hostname to DHCP server during provisioning)
* Fri Sep 30 2016 Dave Anderson <anderson@redhat.com> - 2.2.0-1
- Update to v2.2.0
Resolves: rhbz#1360492
* Wed Sep 21 2016 Dave Anderson <anderson@redhat.com> - 2.1.5-2
- Several QE updates to this file
Resolves: rhbz#1360492
* Tue Sep 13 2016 Dave Anderson <anderson@redhat.com> - 2.1.5-1
- Update to v2.1.5
Resolves: rhbz#1360492
* Thu Jan 14 2016 Dave Anderson <anderson@redhat.com> - 2.0.16-1
- Update to 2.0.16
Resolves: rhbz#1296360
* Mon Jun 01 2015 Dave Anderson <anderson@redhat.com> - 2.0.13-1
- Update to upstream 2.0.13 package.
- Remove global commit md5sum and fix Source0 to point to correct location.
- Fix setup to deal with "WALinuxAgent-WALinuxAgent" naming scheme
- Added files reference for /udev/rules.d/99-azure-product-uuid.rules
* Thu May 07 2015 Dave Anderson <anderson@redhat.com> - 2.0.11-3
- Remove Requires: ntfsprogs for RHEL7
* Sat Jan 10 2015 Scott K Logan <logans@cottsay.net> - 2.0.11-2
- Use systemd for rhel7
- Own logrotate.d
- Fix python2-devel dep
* Sat Dec 20 2014 Scott K Logan <logans@cottsay.net> - 2.0.11-1
- Initial package