import WALinuxAgent-2.7.0.6-1.el9_0
This commit is contained in:
		
							parent
							
								
									ff541f0453
								
							
						
					
					
						commit
						4c434cc0dc
					
				| @ -1 +1 @@ | ||||
| de1d5307a1fc937038536b27d1e32f7ee851d0dd SOURCES/v2.3.0.2.tar.gz | ||||
| 9d9b8fcd872d8782b96d312fb13f47a41658dd04 SOURCES/v2.7.0.6.tar.gz | ||||
|  | ||||
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -1 +1 @@ | ||||
| SOURCES/v2.3.0.2.tar.gz | ||||
| SOURCES/v2.7.0.6.tar.gz | ||||
|  | ||||
							
								
								
									
										75
									
								
								SOURCES/0001-Initial-redhat-build-configuation.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								SOURCES/0001-Initial-redhat-build-configuation.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,75 @@ | ||||
| From 9d071a9b4b40f0f86bb0b739b72c0b9b4870f060 Mon Sep 17 00:00:00 2001 | ||||
| From: Miroslav Rezanina <mrezanin@redhat.com> | ||||
| Date: Fri, 14 May 2021 09:42:08 +0200 | ||||
| Subject: Initial redhat build configuation. | ||||
| 
 | ||||
| Using .distro repository to hold redhat tools and configuration. | ||||
| 
 | ||||
| Package can be built on brew using rh-rhel-koji command. | ||||
| 
 | ||||
| Note: Old rh-brew target is supported. | ||||
| 
 | ||||
| Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> | ||||
| 
 | ||||
| Merged patches (2.7.0.6): | ||||
| - 896c5c83 Require iptables package
 | ||||
| - a702a0d1 (origin/rhel-9.0.0-beta) source-git: Use dynamic SRPM_NAME
 | ||||
| ---
 | ||||
|  .distro/Makefile                     |  73 ++++++ | ||||
|  .distro/Makefile.common              |  18 ++ | ||||
|  .distro/WALinuxAgent.spec.template   | 254 +++++++++++++++++++++ | ||||
|  .distro/module-setup.sh              |  16 ++ | ||||
|  .distro/rpmbuild/BUILD/.gitignore    |   2 + | ||||
|  .distro/rpmbuild/RPMS/.gitignore     |   2 + | ||||
|  .distro/rpmbuild/SOURCES/.gitignore  |   2 + | ||||
|  .distro/rpmbuild/SPECS/.gitignore    |   2 + | ||||
|  .distro/rpmbuild/SRPMS/.gitignore    |   2 + | ||||
|  .distro/scripts/extract_build_cmd.py |  83 +++++++ | ||||
|  .distro/scripts/frh.py               |  24 ++ | ||||
|  .distro/scripts/git-backport-diff    | 327 +++++++++++++++++++++++++++ | ||||
|  .distro/scripts/git-compile-check    | 215 ++++++++++++++++++ | ||||
|  .distro/scripts/process-patches.sh   |  92 ++++++++ | ||||
|  .distro/scripts/tarball_checksum.sh  |   3 + | ||||
|  setup.py                             |   4 +- | ||||
|  16 files changed, 1117 insertions(+), 2 deletions(-) | ||||
|  create mode 100644 .distro/Makefile | ||||
|  create mode 100644 .distro/Makefile.common | ||||
|  create mode 100644 .distro/WALinuxAgent.spec.template | ||||
|  create mode 100644 .distro/module-setup.sh | ||||
|  create mode 100644 .distro/rpmbuild/BUILD/.gitignore | ||||
|  create mode 100644 .distro/rpmbuild/RPMS/.gitignore | ||||
|  create mode 100644 .distro/rpmbuild/SOURCES/.gitignore | ||||
|  create mode 100644 .distro/rpmbuild/SPECS/.gitignore | ||||
|  create mode 100644 .distro/rpmbuild/SRPMS/.gitignore | ||||
|  create mode 100755 .distro/scripts/extract_build_cmd.py | ||||
|  create mode 100755 .distro/scripts/frh.py | ||||
|  create mode 100755 .distro/scripts/git-backport-diff | ||||
|  create mode 100755 .distro/scripts/git-compile-check | ||||
|  create mode 100755 .distro/scripts/process-patches.sh | ||||
|  create mode 100755 .distro/scripts/tarball_checksum.sh | ||||
| 
 | ||||
| diff --git a/setup.py b/setup.py
 | ||||
| index 12c9e1d6..e4d7cf7e 100755
 | ||||
| --- a/setup.py
 | ||||
| +++ b/setup.py
 | ||||
| @@ -97,7 +97,7 @@ def get_data_files(name, version, fullname):  # pylint: disable=R0912
 | ||||
|      agent_bin_path = osutil.get_agent_bin_path() | ||||
|   | ||||
|      if name in ('redhat', 'centos', 'almalinux', 'cloudlinux'):  # pylint: disable=R1714 | ||||
| -        if version.startswith("8.2"):
 | ||||
| +        if version.startswith("9"):
 | ||||
|              # redhat8+ default to py3 | ||||
|              set_bin_files(data_files, dest=agent_bin_path, | ||||
|                            src=["bin/py3/waagent", "bin/waagent2.0"]) | ||||
| @@ -106,7 +106,7 @@ def get_data_files(name, version, fullname):  # pylint: disable=R0912
 | ||||
|          set_conf_files(data_files) | ||||
|          set_logrotate_files(data_files) | ||||
|          set_udev_files(data_files) | ||||
| -        if version.startswith("8.2"):
 | ||||
| +        if version.startswith("9"):
 | ||||
|              # redhat 8+ uses systemd and python3 | ||||
|              set_systemd_files(data_files, dest=systemd_dir_path, | ||||
|                                src=["init/redhat/waagent.service", | ||||
| -- 
 | ||||
| 2.31.1 | ||||
| 
 | ||||
| @ -1,48 +0,0 @@ | ||||
| From 7289e616a836fe0f1c97388f40e5d4916804ae91 Mon Sep 17 00:00:00 2001 | ||||
| From: Paula Gombar <gombarica@gmail.com> | ||||
| Date: Wed, 2 Dec 2020 21:36:41 -0800 | ||||
| Subject: Fix distro resolution for RedHat (#2083) | ||||
| 
 | ||||
| vkuznets: cherry-picking the primary change of the commit (adding 'rhel') | ||||
| only, pylint changes require additional commits. | ||||
| 
 | ||||
| Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> | ||||
| ---
 | ||||
|  tests/common/osutil/test_factory.py | 14 ++++++++++++++ | ||||
|  1 file changed, 14 insertions(+) | ||||
| 
 | ||||
| diff --git a/tests/common/osutil/test_factory.py b/tests/common/osutil/test_factory.py
 | ||||
| index f7d46b21..c48dd17f 100644
 | ||||
| --- a/tests/common/osutil/test_factory.py
 | ||||
| +++ b/tests/common/osutil/test_factory.py
 | ||||
| @@ -195,6 +195,13 @@ class TestOsUtilFactory(AgentTestCase):
 | ||||
|          self.assertTrue(isinstance(ret, Redhat6xOSUtil)) | ||||
|          self.assertEqual(ret.get_service_name(), "waagent") | ||||
|   | ||||
| +        ret = _get_osutil(distro_name="rhel",
 | ||||
| +                          distro_code_name="",
 | ||||
| +                          distro_full_name="",
 | ||||
| +                          distro_version="6")
 | ||||
| +        self.assertTrue(type(ret) == Redhat6xOSUtil)
 | ||||
| +        self.assertEquals(ret.get_service_name(), "waagent")
 | ||||
| +
 | ||||
|          ret = _get_osutil(distro_name="centos", | ||||
|                            distro_code_name="", | ||||
|                            distro_full_name="", | ||||
| @@ -223,6 +230,13 @@ class TestOsUtilFactory(AgentTestCase):
 | ||||
|          self.assertTrue(isinstance(ret, RedhatOSUtil)) | ||||
|          self.assertEqual(ret.get_service_name(), "waagent") | ||||
|   | ||||
| +        ret = _get_osutil(distro_name="rhel",
 | ||||
| +                          distro_code_name="",
 | ||||
| +                          distro_full_name="",
 | ||||
| +                          distro_version="7")
 | ||||
| +        self.assertTrue(type(ret) == RedhatOSUtil)
 | ||||
| +        self.assertEquals(ret.get_service_name(), "waagent")
 | ||||
| +
 | ||||
|          ret = _get_osutil(distro_name="centos", | ||||
|                            distro_code_name="", | ||||
|                            distro_full_name="", | ||||
| -- 
 | ||||
| 2.27.0 | ||||
| 
 | ||||
							
								
								
									
										40
									
								
								SOURCES/0002-Implement-restart_if-for-RedHat-OS.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								SOURCES/0002-Implement-restart_if-for-RedHat-OS.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | ||||
| From 8538516744130409f96b3ec956ff5ec1b1c1be11 Mon Sep 17 00:00:00 2001 | ||||
| From: Miroslav Rezanina <mrezanin@redhat.com> | ||||
| Date: Tue, 24 May 2022 04:10:46 -0400 | ||||
| Subject: Implement restart_if for RedHat OS | ||||
| 
 | ||||
| Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com> | ||||
| Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> | ||||
| ---
 | ||||
|  azurelinuxagent/common/osutil/redhat.py | 18 ++++++++++++++++++ | ||||
|  1 file changed, 18 insertions(+) | ||||
| 
 | ||||
| diff --git a/azurelinuxagent/common/osutil/redhat.py b/azurelinuxagent/common/osutil/redhat.py
 | ||||
| index 9759d113..a02647cd 100644
 | ||||
| --- a/azurelinuxagent/common/osutil/redhat.py
 | ||||
| +++ b/azurelinuxagent/common/osutil/redhat.py
 | ||||
| @@ -142,3 +142,21 @@ class RedhatOSUtil(Redhat6xOSUtil):
 | ||||
|              endpoint = self.get_endpoint_from_leases_path('/var/lib/NetworkManager/dhclient-*.lease') | ||||
|   | ||||
|          return endpoint | ||||
| +
 | ||||
| +    def restart_if(self, ifname, retries=3, wait=5):
 | ||||
| +        """
 | ||||
| +        Restart an interface by bouncing the link.
 | ||||
| +        """
 | ||||
| +        retry_limit=retries+1
 | ||||
| +        for attempt in range(1, retry_limit):
 | ||||
| +            try:
 | ||||
| +                shellutil.run_command(["ip", "link", "set", ifname, "down"])
 | ||||
| +                shellutil.run_command(["ip", "link", "set", ifname, "up"])
 | ||||
| +
 | ||||
| +            except shellutil.CommandError as cmd_err:
 | ||||
| +                logger.warn("failed to restart {0}: return code {1}".format(ifname, cmd_err.returncode))
 | ||||
| +                if attempt < retry_limit:
 | ||||
| +                    logger.info("retrying in {0} seconds".format(wait))
 | ||||
| +                    time.sleep(wait)
 | ||||
| +                else:
 | ||||
| +                    logger.warn("exceeded restart retries")
 | ||||
| -- 
 | ||||
| 2.31.1 | ||||
| 
 | ||||
| @ -0,0 +1,57 @@ | ||||
| From 6d452b28383c59a8193595daaca13fa8db9338a1 Mon Sep 17 00:00:00 2001 | ||||
| From: Mohammed Gamal <mgamal@redhat.com> | ||||
| Date: Wed, 22 Jun 2022 13:36:07 +0200 | ||||
| Subject: [PATCH] redhat: Fix command sequence for restarting net interface | ||||
| 
 | ||||
| RH-Author: Mohamed Gamal Morsy <mmorsy@redhat.com> | ||||
| RH-MergeRequest: 2: redhat: Fix command sequence for restarting net interface | ||||
| RH-Commit: [1/1] e838ff196b8823f64e08247b3a4dac9d60e5ed72 | ||||
| RH-Bugzilla: 2098233 | ||||
| RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com> | ||||
| RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com> | ||||
| 
 | ||||
| Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2098233 | ||||
| 
 | ||||
| Apparently the down and up commands need to be run in the same command, so | ||||
| connect them together with "&&" operator. Also re-implement restart_if ot handle | ||||
| warnings same wat as other distros | ||||
| 
 | ||||
| Signed-off-by: Mohammed Gamal <mgamal@redhat.com> | ||||
| ---
 | ||||
|  azurelinuxagent/common/osutil/redhat.py | 22 ++++++++++------------ | ||||
|  1 file changed, 10 insertions(+), 12 deletions(-) | ||||
| 
 | ||||
| diff --git a/azurelinuxagent/common/osutil/redhat.py b/azurelinuxagent/common/osutil/redhat.py
 | ||||
| index a02647cd..5c397ae8 100644
 | ||||
| --- a/azurelinuxagent/common/osutil/redhat.py
 | ||||
| +++ b/azurelinuxagent/common/osutil/redhat.py
 | ||||
| @@ -147,16 +147,14 @@ class RedhatOSUtil(Redhat6xOSUtil):
 | ||||
|          """ | ||||
|          Restart an interface by bouncing the link. | ||||
|          """ | ||||
| -        retry_limit=retries+1
 | ||||
| +        retry_limit = retries + 1
 | ||||
|          for attempt in range(1, retry_limit): | ||||
| -            try:
 | ||||
| -                shellutil.run_command(["ip", "link", "set", ifname, "down"])
 | ||||
| -                shellutil.run_command(["ip", "link", "set", ifname, "up"])
 | ||||
| -
 | ||||
| -            except shellutil.CommandError as cmd_err:
 | ||||
| -                logger.warn("failed to restart {0}: return code {1}".format(ifname, cmd_err.returncode))
 | ||||
| -                if attempt < retry_limit:
 | ||||
| -                    logger.info("retrying in {0} seconds".format(wait))
 | ||||
| -                    time.sleep(wait)
 | ||||
| -                else:
 | ||||
| -                    logger.warn("exceeded restart retries")
 | ||||
| +            return_code = shellutil.run("ip link set {0} down && ip link set {0} up".format(ifname), expected_errors=[1] if attempt < retries else [])
 | ||||
| +            if return_code == 0:
 | ||||
| +                return
 | ||||
| +            logger.warn("failed to restart {0}: return code {1}".format(ifname, return_code))
 | ||||
| +            if attempt < retry_limit:
 | ||||
| +                logger.info("retrying in {0} seconds".format(wait))
 | ||||
| +                time.sleep(wait)
 | ||||
| +            else:
 | ||||
| +                logger.warn("exceeded restart retries")
 | ||||
| -- 
 | ||||
| 2.31.1 | ||||
| 
 | ||||
| @ -2,8 +2,8 @@ | ||||
| %global dracut_modname 97walinuxagent | ||||
| 
 | ||||
| Name:           WALinuxAgent | ||||
| Version:        2.3.0.2 | ||||
| Release:        3%{?dist} | ||||
| Version:        2.7.0.6 | ||||
| Release:        1%{?dist} | ||||
| Summary:        The Microsoft Azure Linux Agent | ||||
| 
 | ||||
| License:        ASL 2.0 | ||||
| @ -12,7 +12,10 @@ Source0:        https://github.com/Azure/%{name}/archive/v%{version}.tar.gz | ||||
| Source1:        module-setup.sh | ||||
| 
 | ||||
| # Python3.9 fixes | ||||
| Patch0002: 0002-Fix-distro-resolution-for-RedHat-2083.patch | ||||
| Patch0001: 0001-Initial-redhat-build-configuation.patch | ||||
| Patch0002: 0002-Implement-restart_if-for-RedHat-OS.patch | ||||
| Patch3: wla-redhat-Fix-command-sequence-for-restarting-net-inter.patch | ||||
| 
 | ||||
| # Source-git patches | ||||
| 
 | ||||
| BuildArch:      noarch | ||||
| @ -60,8 +63,7 @@ Udev rules specific to Microsoft Azure Virtual Machines. | ||||
| 
 | ||||
| %prep | ||||
| %setup -q | ||||
| %patch0002 -p1 | ||||
| # Apply source-git patches | ||||
| %autopatch -p1 | ||||
| 
 | ||||
| %build | ||||
| %py3_build | ||||
| @ -80,13 +82,11 @@ rm -rf %{buildroot}/%{python3_sitelib}/tests | ||||
| rm -rf %{buildroot}/%{python3_sitelib}/__main__.py | ||||
| rm -rf %{buildroot}/%{python3_sitelib}/__pycache__/__main__*.py* | ||||
| 
 | ||||
| sed -i 's,#!/usr/bin/env python,#!/usr/bin/python3,' %{buildroot}%{_sbindir}/waagent | ||||
| %if 0%{?with_legacy} | ||||
| sed -i 's,#!/usr/bin/env python,#!/usr/bin/python2,' %{buildroot}%{_sbindir}/waagent2.0 | ||||
| %else | ||||
| rm -f %{buildroot}%{_sbindir}/waagent2.0 | ||||
| %endif | ||||
| sed -i 's,/usr/bin/python ,/usr/bin/python3 ,' %{buildroot}%{_unitdir}/waagent.service | ||||
| 
 | ||||
| mv %{buildroot}%{_sysconfdir}/logrotate.d/waagent.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/%{name} | ||||
| 
 | ||||
| @ -109,6 +109,8 @@ install -m0755 -D -t %{buildroot}%{_prefix}/lib/dracut/modules.d/%{dracut_modnam | ||||
| %{_sbindir}/waagent | ||||
| %config(noreplace) %{_sysconfdir}/waagent.conf | ||||
| %{_unitdir}/waagent.service | ||||
| %{_unitdir}/azure.slice | ||||
| %{_unitdir}/azure-vmextensions.slice | ||||
| %{python3_sitelib}/azurelinuxagent | ||||
| %{python3_sitelib}/*.egg-info | ||||
| 
 | ||||
| @ -122,6 +124,11 @@ install -m0755 -D -t %{buildroot}%{_prefix}/lib/dracut/modules.d/%{dracut_modnam | ||||
| %endif | ||||
| 
 | ||||
| %changelog | ||||
| * Wed May 25 2022 Miroslav Rezanina <mrezanin@redhat.com> - 2.7.0.6-1.el9_0 | ||||
| - Rebase to 2.7.0.6-1 [bz#2110415] | ||||
| - Resolves: bz#2110415 | ||||
|   ([Azure][WALA][RHEL-9] [9.0.z]The latest RHEL 9 repositories contain a buggy old version of WALinuxAgent : 2.3.0.2, latest version is v2.7.0.6 [rhel-9.0.0.z]) | ||||
| 
 | ||||
| * Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 2.3.0.2-3 | ||||
| - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags | ||||
|   Related: rhbz#1991688 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user