Compare commits
No commits in common. "imports/c8s/WALinuxAgent-2.2.49.2-1.el8" and "c8" have entirely different histories.
imports/c8
...
c8
|
@ -1 +1 @@
|
|||
3c11701ed7b3d9dc76f521eb9519c3f1ce8a24b8 SOURCES/WALinuxAgent-2.2.49.2.tar.gz
|
||||
9d9b8fcd872d8782b96d312fb13f47a41658dd04 SOURCES/v2.7.0.6.tar.gz
|
||||
|
|
|
@ -1 +1 @@
|
|||
SOURCES/WALinuxAgent-2.2.49.2.tar.gz
|
||||
SOURCES/v2.7.0.6.tar.gz
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
From 18257d0baf1acde7522c1bf7d10e0a588d974431 Mon Sep 17 00:00:00 2001
|
||||
From ee6172c4d57103ac857bbd69c46f247cee5394c3 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
|
||||
|
@ -17,6 +17,10 @@ Rebase notes (2.2.10):
|
|||
Rebase notes (2.2.46):
|
||||
- added waagent-extn.logrotate
|
||||
|
||||
Rebase notes (2.7.0.6):
|
||||
- new files - azure.slice and azure-vmextensions.slice
|
||||
- removed changes in not shipped scripts
|
||||
|
||||
Merged patches (2.2.45):
|
||||
- df29beb Switch from platform-python to python36
|
||||
- 6749108 Stop packaging legacy waagent2.0
|
||||
|
@ -31,34 +35,33 @@ Merged patches (2.2.32):
|
|||
|
||||
Merged patches (2.2.49):
|
||||
- 3a23336 Mark logrotate configs with %config(noreplace)
|
||||
|
||||
Merged patches (2.3.0.2):
|
||||
- 30bb06f9 Provide udev rules as a separate subpackage.
|
||||
|
||||
Merged patches (2.7.0.6):
|
||||
- a790fb5c Require iptables for setting up persistent firewall rules
|
||||
---
|
||||
.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/Makefile | 72 +++++
|
||||
redhat/Makefile.common | 37 +++
|
||||
redhat/WALinuxAgent.spec.template | 243 ++++++++++++++++
|
||||
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/frh.py | 27 ++
|
||||
redhat/scripts/git-backport-diff | 327 ++++++++++++++++++++++
|
||||
redhat/scripts/git-compile-check | 215 ++++++++++++++
|
||||
redhat/scripts/process-patches.sh | 93 ++++++
|
||||
redhat/scripts/tarball_checksum.sh | 3 +
|
||||
setup.py | 2 +-
|
||||
setup.py | 6 +-
|
||||
tests/data/ext/sample_ext-1.3.0/sample.py | 2 +-
|
||||
26 files changed, 1002 insertions(+), 14 deletions(-)
|
||||
19 files changed, 1042 insertions(+), 5 deletions(-)
|
||||
create mode 100644 .gitpublish
|
||||
create mode 100644 redhat/.gitignore
|
||||
create mode 100644 redhat/Makefile
|
||||
|
@ -75,110 +78,8 @@ Merged patches (2.2.49):
|
|||
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
|
||||
index 11e90b95..1b6b4351 100755
|
||||
--- a/makepkg.py
|
||||
+++ b/makepkg.py
|
||||
@@ -1,4 +1,4 @@
|
||||
|
@ -188,7 +89,7 @@ index 52e0eae..51c263c 100755
|
|||
import glob
|
||||
import os
|
||||
diff --git a/setup.py b/setup.py
|
||||
index 372807f..f0798ff 100755
|
||||
index 12c9e1d6..586bb5ca 100755
|
||||
--- a/setup.py
|
||||
+++ b/setup.py
|
||||
@@ -1,4 +1,4 @@
|
||||
|
@ -197,16 +98,34 @@ index 372807f..f0798ff 100755
|
|||
#
|
||||
# Microsoft Azure Linux Agent 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("8"):
|
||||
# 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("8"):
|
||||
# redhat 8+ uses systemd and python3
|
||||
set_systemd_files(data_files, dest=systemd_dir_path,
|
||||
src=["init/redhat/waagent.service",
|
||||
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
|
||||
index 47f86af8..92585ed3 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 json
|
||||
import os
|
||||
|
||||
import re
|
||||
--
|
||||
1.8.3.1
|
||||
2.31.1
|
||||
|
||||
|
|
|
@ -1,84 +0,0 @@
|
|||
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
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
From 0a9c628d9edd67af7b6f20d034be85c1c552a512 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,108 @@
|
|||
From 97728b1371d39f5ddd31004db0ba87b268308c5d Mon Sep 17 00:00:00 2001
|
||||
From: Mohammed Gamal <mgamal@redhat.com>
|
||||
Date: Wed, 3 Aug 2022 13:39:56 +0200
|
||||
Subject: [PATCH 2/2] Update Log Collector default in Comments and Readme
|
||||
(#2608)
|
||||
|
||||
RH-Author: Mohamed Gamal Morsy <mmorsy@redhat.com>
|
||||
RH-MergeRequest: 9: Update Log Collector default in Comments and Readme
|
||||
RH-Commit: [1/1] ff82c0e933649ccd06d3cc48753324cddef2c56a
|
||||
RH-Bugzilla: 2114824
|
||||
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=2114824
|
||||
|
||||
(cherry picked from commit a560872bec103523e73ddcb5fb5705896545ffce)
|
||||
|
||||
Signed-off-by: Mohammed Gamal <mgamal@redhat.com>
|
||||
---
|
||||
README.md | 2 +-
|
||||
config/debian/waagent.conf | 2 +-
|
||||
config/suse/waagent.conf | 2 +-
|
||||
config/ubuntu/waagent.conf | 2 +-
|
||||
config/waagent.conf | 2 +-
|
||||
tests/data/test_waagent.conf | 2 +-
|
||||
6 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/README.md b/README.md
|
||||
index c69f43e6..f2f3db46 100644
|
||||
--- a/README.md
|
||||
+++ b/README.md
|
||||
@@ -465,7 +465,7 @@ _Default: y_
|
||||
|
||||
If set, agent logs will be periodically collected and uploaded to a secure location for improved supportability.
|
||||
|
||||
-NOTE: This feature is only supported ubuntu 16.04+; this flag will not take effect on any other distro.
|
||||
+NOTE: This feature relies on the agent's resource usage features (cgroups); this flag will not take effect on any distro not supported.
|
||||
|
||||
#### __Logs.CollectPeriod__
|
||||
|
||||
diff --git a/config/debian/waagent.conf b/config/debian/waagent.conf
|
||||
index 6bc36604..dfd7afcd 100644
|
||||
--- a/config/debian/waagent.conf
|
||||
+++ b/config/debian/waagent.conf
|
||||
@@ -63,7 +63,7 @@ Logs.Verbose=n
|
||||
# Enable Console logging, default is y
|
||||
# Logs.Console=y
|
||||
|
||||
-# Enable periodic log collection, default is n
|
||||
+# Enable periodic log collection, default is y
|
||||
Logs.Collect=y
|
||||
|
||||
# How frequently to collect logs, default is each hour
|
||||
diff --git a/config/suse/waagent.conf b/config/suse/waagent.conf
|
||||
index ac9f11a2..c617f9af 100644
|
||||
--- a/config/suse/waagent.conf
|
||||
+++ b/config/suse/waagent.conf
|
||||
@@ -66,7 +66,7 @@ Logs.Verbose=n
|
||||
# Enable Console logging, default is y
|
||||
# Logs.Console=y
|
||||
|
||||
-# Enable periodic log collection, default is n
|
||||
+# Enable periodic log collection, default is y
|
||||
Logs.Collect=y
|
||||
|
||||
# How frequently to collect logs, default is each hour
|
||||
diff --git a/config/ubuntu/waagent.conf b/config/ubuntu/waagent.conf
|
||||
index 63635a81..19b56bae 100644
|
||||
--- a/config/ubuntu/waagent.conf
|
||||
+++ b/config/ubuntu/waagent.conf
|
||||
@@ -66,7 +66,7 @@ Logs.Verbose=n
|
||||
# Enable Console logging, default is y
|
||||
# Logs.Console=y
|
||||
|
||||
-# Enable periodic log collection, default is n
|
||||
+# Enable periodic log collection, default is y
|
||||
Logs.Collect=y
|
||||
|
||||
# How frequently to collect logs, default is each hour
|
||||
diff --git a/config/waagent.conf b/config/waagent.conf
|
||||
index c7d10e2f..14cd01c8 100644
|
||||
--- a/config/waagent.conf
|
||||
+++ b/config/waagent.conf
|
||||
@@ -72,7 +72,7 @@ Logs.Verbose=n
|
||||
# Enable Console logging, default is y
|
||||
# Logs.Console=y
|
||||
|
||||
-# Enable periodic log collection, default is n
|
||||
+# Enable periodic log collection, default is y
|
||||
Logs.Collect=y
|
||||
|
||||
# How frequently to collect logs, default is each hour
|
||||
diff --git a/tests/data/test_waagent.conf b/tests/data/test_waagent.conf
|
||||
index a386228a..cc60886e 100644
|
||||
--- a/tests/data/test_waagent.conf
|
||||
+++ b/tests/data/test_waagent.conf
|
||||
@@ -67,7 +67,7 @@ ResourceDisk.MountOptions=None
|
||||
# Enable verbose logging (y|n)
|
||||
Logs.Verbose=n
|
||||
|
||||
-# Enable periodic log collection, default is n
|
||||
+# Enable periodic log collection, default is y
|
||||
Logs.Collect=y
|
||||
|
||||
# How frequently to collect logs, default is each hour
|
||||
--
|
||||
2.31.1
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
From 85638d1238ba9ab0c77138133ab1b7c7069e3821 Mon Sep 17 00:00:00 2001
|
||||
From: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||
Date: Tue, 21 Feb 2023 10:29:52 +0100
|
||||
Subject: [PATCH 2/2] Use platform-python in waagent.service
|
||||
|
||||
RH-Author: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||
RH-MergeRequest: 16: Use platform-python in waagent.service
|
||||
RH-Bugzilla: 2170104
|
||||
RH-Acked-by: Mohamed Gamal Morsy <mmorsy@redhat.com>
|
||||
RH-Acked-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||||
RH-Commit: [2/2] e548a4d37bd89e6e2eb471b5193b76f1f9f9529b
|
||||
|
||||
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2170104
|
||||
Upstream: RHEL only
|
||||
|
||||
WALinuxAgent in RHEL8 uses platform-python, which is python3.6.
|
||||
'waagent.service', however, overrides this by calling
|
||||
'/usr/bin/python3' directly and in case this point to a newer
|
||||
AppStream Python (e.g. Python3.9) WALinuxAgent breaks as it can't
|
||||
find its files.
|
||||
|
||||
See also: https://github.com/Azure/WALinuxAgent/issues/2728
|
||||
See also: https://github.com/Azure/WALinuxAgent/pull/2729
|
||||
|
||||
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||
---
|
||||
init/redhat/waagent.service | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/init/redhat/waagent.service b/init/redhat/waagent.service
|
||||
index dc11fbb1..29056395 100644
|
||||
--- a/init/redhat/waagent.service
|
||||
+++ b/init/redhat/waagent.service
|
||||
@@ -8,7 +8,7 @@ ConditionPathExists=/etc/waagent.conf
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
-ExecStart=/usr/bin/python3 -u /usr/sbin/waagent -daemon
|
||||
+ExecStart=/usr/sbin/waagent -daemon
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
Slice=azure.slice
|
||||
--
|
||||
2.37.3
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
From ac21739b94266387360a7ba2b3cfeb44c3df5b01 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: 4: redhat: Fix command sequence for restarting net interface
|
||||
RH-Commit: [1/1] ac14220635c30b3361399ae33a5ecd4e7d8cf92b
|
||||
RH-Bugzilla: 2080826
|
||||
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||
RH-Acked-by: Vitaly Kuznetsov <vkuznets@redhat.com>
|
||||
|
||||
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2080826
|
||||
|
||||
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.35.3
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
From f45dc73365999334e680d64c90d36f710a0c7831 Mon Sep 17 00:00:00 2001
|
||||
From: Mohammed Gamal <mgamal@redhat.com>
|
||||
Date: Fri, 29 Jul 2022 13:07:13 +0200
|
||||
Subject: [PATCH 1/2] redhat: Use NetworkManager to set DHCP hostnames on
|
||||
recent RHEL distros
|
||||
|
||||
RH-Author: Mohamed Gamal Morsy <mmorsy@redhat.com>
|
||||
RH-MergeRequest: 8: redhat: Use NetworkManager to set DHCP hostnames on recent RHEL distros
|
||||
RH-Commit: [1/1] b83612e9d88bac7117541d7f7832f65ef268bbe3
|
||||
RH-Bugzilla: 2092002
|
||||
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=2092002
|
||||
|
||||
Recent versions of RHEL 8 and RHEL 9 started using NetworkManager to configure
|
||||
network intefaces instead of sysconfig files. Configurations are no longer
|
||||
stored in /etc/sysconfig/ifcfg-{interface}.
|
||||
|
||||
Fix this for setting DHCP hostnames in those RHEL versions.
|
||||
|
||||
Signed-off-by: Mohammed Gamal <mgamal@redhat.com>
|
||||
---
|
||||
azurelinuxagent/common/osutil/redhat.py | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/azurelinuxagent/common/osutil/redhat.py b/azurelinuxagent/common/osutil/redhat.py
|
||||
index 5c397ae8..7dd36add 100644
|
||||
--- a/azurelinuxagent/common/osutil/redhat.py
|
||||
+++ b/azurelinuxagent/common/osutil/redhat.py
|
||||
@@ -158,3 +158,15 @@ class RedhatOSUtil(Redhat6xOSUtil):
|
||||
time.sleep(wait)
|
||||
else:
|
||||
logger.warn("exceeded restart retries")
|
||||
+
|
||||
+ def set_dhcp_hostname(self, hostname):
|
||||
+ """
|
||||
+ Recent RHEL distributions use network manager instead of sysconfig files
|
||||
+ to configure network interfaces
|
||||
+ """
|
||||
+ ifname = self.get_if_name()
|
||||
+
|
||||
+ return_code = shellutil.run("nmcli device modify {0} ipv4.dhcp-hostname {1} ipv6.dhcp-hostname {1}".format(ifname, hostname))
|
||||
+
|
||||
+ if return_code != 0:
|
||||
+ logger.error("failed to set DHCP hostname for interface {0}: return code {1}".format(ifname, return_code))
|
||||
--
|
||||
2.31.1
|
||||
|
|
@ -1,26 +1,36 @@
|
|||
Summary: Microsoft Azure Linux Agent
|
||||
Name: WALinuxAgent
|
||||
Version: 2.2.49.2
|
||||
Release: 1%{?dist}
|
||||
Version: 2.7.0.6
|
||||
Release: 8%{?dist}
|
||||
|
||||
License: ASL 2.0
|
||||
Group: Development/Libraries
|
||||
Url: https://github.com/Azure/WALinuxAgent
|
||||
Source0: WALinuxAgent-2.2.49.2.tar.gz
|
||||
Source0: v2.7.0.6.tar.gz
|
||||
|
||||
BuildArch: noarch
|
||||
Patch0001: 0001-Add-inital-redhat-build-support.patch
|
||||
Patch0002: 0002-Fix-handling-of-gen2-disks-with-udev-rules-1954.patch
|
||||
Patch0002: 0002-Implement-restart_if-for-RedHat-OS.patch
|
||||
# For bz#2080826 - [Azure][WALA][RHEL-8] [8.7] walinuxagent kills network during boot
|
||||
Patch0003: wla-redhat-Fix-command-sequence-for-restarting-net-inter.patch
|
||||
# For bz#2092002 - [Azure][WALA][RHEL-8.7] Provisioning failed if no ifcfg-eth0
|
||||
Patch4: wla-redhat-Use-NetworkManager-to-set-DHCP-hostnames-on-r.patch
|
||||
# For bz#2114824 - [Azure][WALA][RHEL-8.7] The description of "Logs.Collect" is incorrect
|
||||
Patch5: wla-Update-Log-Collector-default-in-Comments-and-Readme-.patch
|
||||
# For bz#2170104 - [Azure][WALA][RHEL-8] systemd service should not use python3
|
||||
Patch6: wla-Use-platform-python-in-waagent.service.patch
|
||||
|
||||
# rhel requirements
|
||||
BuildRequires: python3-devel
|
||||
BuildRequires: python3-setuptools
|
||||
Requires: %name-udev = %version-%release
|
||||
Requires: openssh
|
||||
Requires: openssh-server
|
||||
Requires: openssl
|
||||
Requires: parted
|
||||
Requires: python3-pyasn1
|
||||
Requires: python36
|
||||
Requires: iptables
|
||||
|
||||
BuildRequires: systemd
|
||||
Requires(post): systemd
|
||||
|
@ -32,12 +42,21 @@ 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.
|
||||
|
||||
%package udev
|
||||
Summary: Udev rules for Microsoft Azure
|
||||
|
||||
%description udev
|
||||
Udev rules specific to Microsoft Azure Virtual Machines.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
%patch0003 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
|
||||
%build
|
||||
%py3_build
|
||||
|
@ -46,6 +65,9 @@ images that are built to run in the Azure environment.
|
|||
%{__python3} setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES
|
||||
rm -f %{buildroot}%{_sbindir}/waagent2.0
|
||||
|
||||
mkdir -p %{buildroot}%{_udevrulesdir}
|
||||
mv %{buildroot}%{_sysconfdir}/udev/rules.d/*.rules %{buildroot}%{_udevrulesdir}/
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
@ -57,22 +79,93 @@ rm -rf $RPM_BUILD_ROOT
|
|||
|
||||
%postun
|
||||
%systemd_postun_with_restart waagent.service
|
||||
rm -rf %{_unitdir}/waagent.service.d/
|
||||
|
||||
%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
|
||||
%{_unitdir}/azure.slice
|
||||
%{_unitdir}/azure-vmextensions.slice
|
||||
%ghost %{_unitdir}/waagent-network-setup.service
|
||||
|
||||
%files udev
|
||||
%{_udevrulesdir}/*.rules
|
||||
|
||||
%changelog
|
||||
* Mon Mar 06 2023 Jon Maloy <jmaloy@redhat.com> - 2.7.0.6-8.el8_8
|
||||
- wla-redhat-Fix-frh.py-to-not-skip-valid-patches-to-init-.patch [bz#2170104]
|
||||
- wla-Use-platform-python-in-waagent.service.patch [bz#2170104]
|
||||
- Resolves: bz#2170104
|
||||
([Azure][WALA][RHEL-8] systemd service should not use python3)
|
||||
|
||||
* Mon Mar 06 2023 Jon Maloy <jmaloy@redhat.com> - 2.7.0.6-7.el8_8
|
||||
- wla-redhat-Fix-frh.py-to-not-skip-valid-patches-to-init-.patch [bz#2170104]
|
||||
- wla-Use-platform-python-in-waagent.service.patch [bz#2170104]
|
||||
- Resolves: bz#2170104
|
||||
([Azure][WALA][RHEL-8] systemd service should not use python3)
|
||||
|
||||
* Mon Aug 29 2022 Miroslav Rezanina <mrezanin@redhat.com> - 2.7.0.6-6
|
||||
- wla-redhat-Remove-files-inside-WALA-services-directory.patch [bz#2114742]
|
||||
- Resolves: bz#2114742
|
||||
([Azure][WALA][RHEL-8] When remove package some files left)
|
||||
|
||||
* Tue Aug 23 2022 Miroslav Rezanina <mrezanin@redhat.com> - 2.7.0.6-5
|
||||
- wla-redhat-Mark-directories-properly-in-the-files-list.patch [bz#2114742]
|
||||
- Resolves: bz#2114742
|
||||
([Azure][WALA][RHEL-8] When remove package some files left)
|
||||
|
||||
* Wed Aug 17 2022 Jon Maloy <jmaloy@redhat.com> - 2.7.0.6-4
|
||||
- wla-redhat-Remove-all-waagent-unit-files-when-uninstalli.patch [bz#2114742]
|
||||
- Resolves: bz#2114742
|
||||
([Azure][WALA][RHEL-8] When remove package some files left)
|
||||
|
||||
* Tue Aug 09 2022 Miroslav Rezanina <mrezanin@redhat.com> - 2.7.0.6-3
|
||||
- wla-redhat-Use-NetworkManager-to-set-DHCP-hostnames-on-r.patch [bz#2092002]
|
||||
- wla-Update-Log-Collector-default-in-Comments-and-Readme-.patch [bz#2114824]
|
||||
- Resolves: bz#2092002
|
||||
([Azure][WALA][RHEL-8.7] Provisioning failed if no ifcfg-eth0)
|
||||
- Resolves: bz#2114824
|
||||
([Azure][WALA][RHEL-8.7] The description of "Logs.Collect" is incorrect)
|
||||
|
||||
* Tue Jul 12 2022 Camilla Conte <cconte@redhat.com> - 2.7.0.6-2
|
||||
- wla-redhat-Fix-command-sequence-for-restarting-net-inter.patch [bz#2080826]
|
||||
- Resolves: bz#2080826
|
||||
([Azure][WALA][RHEL-8] [8.7] walinuxagent kills network during boot)
|
||||
|
||||
* Wed May 25 2022 Miroslav Rezanina <mrezanin@redhat.com> - 2.7.0.6-1
|
||||
- Rebase to 2.7.0.6 [bz#2083465]
|
||||
- Adding restart_if implementation for RHEL [bz#2085578]
|
||||
- Resolves: bz#2083465
|
||||
([Azure][RHEL-8][8.7] Rebase WALinuxAgent to v2.7.0.6)
|
||||
- Resolves: bz#2085578
|
||||
([Azure][WALA][8.6] WALA provisions VM failed because of no "ifdown")
|
||||
|
||||
* Mon Aug 09 2021 Miroslav Rezanina <mrezanin@redhat.com> - 2.3.0.2-2
|
||||
- wla-Require-iptables-for-setting-up-persistent-firewall-.patch [bz#1985198]
|
||||
- Resolves: bz#1985198
|
||||
([Azure][WALA][RHEL-8] WALA needs iptables package)
|
||||
|
||||
* Fri Jun 25 2021 Miroslav Rezanina <mrezanin@redhat.com> - 2.3.0.2-1
|
||||
- Rebase to 2.3.0.2 [bz#1972102]
|
||||
- Resolves: bz#1972102
|
||||
([Azure][RHEL-8]Rebase WALinuxAgent to 2.3.0.2)
|
||||
|
||||
* Tue Jan 12 2021 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.49.2-3.el8
|
||||
- wla-Provide-udev-rules-as-a-separate-subpackage.patch [bz#1913074]
|
||||
- Resolves: bz#1913074
|
||||
([Azure][RFE] please provide the WALinuxAgent-udev subpackage)
|
||||
|
||||
* Thu Dec 17 2020 Miroslav Rezanina <mrezanin@redhat.com> - 2.2.49.2-2.el8
|
||||
- wla-Fixed-faulty-check-for-run_command-2093.patch [bz#1903074]
|
||||
- Resolves: bz#1903074
|
||||
([Azure][WALA] Miss report "hostnamectl set-hostname --static] failed, attempting fallback")
|
||||
|
||||
* 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
|
||||
|
|
Loading…
Reference in New Issue