Skip to content

Commit 407f78c

Browse files
authored
[AzL3Tdnf] Renaming TdnfPackageManager to AzL3PackageManager (#332)
This is a simple renaming of TdnfPackageManager to AzL3PackageManager. Will be followed up by separating generic TdnfPackageManager implementations from Azure Linux 3 specific ones: #331
1 parent 38b3f22 commit 407f78c

3 files changed

Lines changed: 13 additions & 19 deletions

File tree

src/core/src/bootstrap/ConfigurationFactory.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
from core.src.local_loggers.CompositeLogger import CompositeLogger
3838

3939
from core.src.package_managers.AptitudePackageManager import AptitudePackageManager
40-
from core.src.package_managers.TdnfPackageManager import TdnfPackageManager
40+
from core.src.package_managers.AzL3TdnfPackageManager import AzL3TdnfPackageManager
4141
from core.src.package_managers.YumPackageManager import YumPackageManager
4242
from core.src.package_managers.ZypperPackageManager import ZypperPackageManager
4343

@@ -70,17 +70,17 @@ def __init__(self, log_file_path, events_folder, telemetry_supported):
7070

7171
self.configurations = {
7272
'apt_prod_config': self.new_prod_configuration(Constants.APT, AptitudePackageManager),
73-
'tdnf_prod_config': self.new_prod_configuration(Constants.TDNF, TdnfPackageManager),
73+
'tdnf_prod_config': self.new_prod_configuration(Constants.TDNF, AzL3TdnfPackageManager),
7474
'yum_prod_config': self.new_prod_configuration(Constants.YUM, YumPackageManager),
7575
'zypper_prod_config': self.new_prod_configuration(Constants.ZYPPER, ZypperPackageManager),
7676

7777
'apt_dev_config': self.new_dev_configuration(Constants.APT, AptitudePackageManager),
78-
'tdnf_dev_config': self.new_dev_configuration(Constants.TDNF, TdnfPackageManager),
78+
'tdnf_dev_config': self.new_dev_configuration(Constants.TDNF, AzL3TdnfPackageManager),
7979
'yum_dev_config': self.new_dev_configuration(Constants.YUM, YumPackageManager),
8080
'zypper_dev_config': self.new_dev_configuration(Constants.ZYPPER, ZypperPackageManager),
8181

8282
'apt_test_config': self.new_test_configuration(Constants.APT, AptitudePackageManager),
83-
'tdnf_test_config': self.new_test_configuration(Constants.TDNF, TdnfPackageManager),
83+
'tdnf_test_config': self.new_test_configuration(Constants.TDNF, AzL3TdnfPackageManager),
8484
'yum_test_config': self.new_test_configuration(Constants.YUM, YumPackageManager),
8585
'zypper_test_config': self.new_test_configuration(Constants.ZYPPER, ZypperPackageManager)
8686
}

src/core/src/package_managers/TdnfPackageManager.py renamed to src/core/src/package_managers/AzL3TdnfPackageManager.py

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@
2424
from core.src.bootstrap.Constants import Constants
2525

2626

27-
class TdnfPackageManager(PackageManager):
27+
class AzL3TdnfPackageManager(PackageManager):
2828
"""Implementation of Azure Linux package management operations"""
2929

3030
def __init__(self, env_layer, execution_config, composite_logger, telemetry_writer, status_handler):
31-
super(TdnfPackageManager, self).__init__(env_layer, execution_config, composite_logger, telemetry_writer, status_handler)
31+
super(AzL3TdnfPackageManager, self).__init__(env_layer, execution_config, composite_logger, telemetry_writer, status_handler)
3232
# Repo refresh
3333
self.cmd_clean_cache = "sudo tdnf clean expire-cache"
3434
self.cmd_repo_refresh = "sudo tdnf -q list updates"
@@ -71,8 +71,8 @@ def __init__(self, env_layer, execution_config, composite_logger, telemetry_writ
7171
# commands for DNF Automatic updates service
7272
self.__init_constants_for_dnf_automatic()
7373

74-
# AzLinux3 Package Manager.
75-
self.azl3_tdnf_packagemanager = self.AzL3TdnfPackageManager()
74+
# Strict SDP specializations
75+
self.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP = "3.5.8-3.azl3" # minimum version of tdnf required to support Strict SDP in Azure Linux
7676

7777
# Miscellaneous
7878
self.set_package_manager_setting(Constants.PKG_MGR_SETTING_IDENTITY, Constants.TDNF)
@@ -257,16 +257,16 @@ def is_minimum_tdnf_version_for_strict_sdp_installed(self):
257257
"""Check if at least the minimum required version of TDNF is installed"""
258258
self.composite_logger.log_debug("[TDNF] Checking if minimum TDNF version required for strict safe deployment is installed...")
259259
tdnf_version = self.get_tdnf_version()
260-
minimum_tdnf_version_for_strict_sdp = self.azl3_tdnf_packagemanager.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP
260+
minimum_tdnf_version_for_strict_sdp = self.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP
261261
distro_from_minimum_tdnf_version_for_strict_sdp = re.match(r".*-\d+\.([a-zA-Z0-9]+)$", minimum_tdnf_version_for_strict_sdp).group(1)
262262
if tdnf_version is None:
263263
self.composite_logger.log_error("[TDNF] Failed to get TDNF version. Cannot proceed with strict safe deployment. Defaulting to regular upgrades.")
264264
return False
265265
elif re.match(r".*-\d+\.([a-zA-Z0-9]+)$", tdnf_version).group(1) != distro_from_minimum_tdnf_version_for_strict_sdp:
266-
self.composite_logger.log_warning("[TDNF] TDNF version installed is not from the same Azure Linux distribution as the minimum required version for strict SDP. [InstalledVersion={0}][MinimumRequiredVersion={1}]".format(tdnf_version, self.azl3_tdnf_packagemanager.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP))
266+
self.composite_logger.log_warning("[TDNF] TDNF version installed is not from the same Azure Linux distribution as the minimum required version for strict SDP. [InstalledVersion={0}][MinimumRequiredVersion={1}]".format(tdnf_version, self.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP))
267267
return False
268268
elif not self.version_comparator.compare_versions(tdnf_version, minimum_tdnf_version_for_strict_sdp) >= 0:
269-
self.composite_logger.log_warning("[TDNF] TDNF version installed is less than the minimum required version for strict SDP. [InstalledVersion={0}][MinimumRequiredVersion={1}]".format(tdnf_version, self.azl3_tdnf_packagemanager.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP))
269+
self.composite_logger.log_warning("[TDNF] TDNF version installed is less than the minimum required version for strict SDP. [InstalledVersion={0}][MinimumRequiredVersion={1}]".format(tdnf_version, self.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP))
270270
return False
271271
return True
272272

@@ -289,7 +289,7 @@ def try_tdnf_update_to_meet_strict_sdp_requirements(self):
289289
# type: () -> bool
290290
"""Attempt to update TDNF to meet the minimum version required for strict SDP"""
291291
self.composite_logger.log_debug("[TDNF] Attempting to update TDNF to meet strict safe deployment requirements...")
292-
cmd = "sudo tdnf -y install tdnf-" + self.azl3_tdnf_packagemanager.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP
292+
cmd = "sudo tdnf -y install tdnf-" + self.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP
293293
code, output = self.env_layer.run_command_output(cmd, no_output=True, chk_err=False)
294294
if code == 0:
295295
self.composite_logger.log_debug("[TDNF] Successfully updated TDNF for Strict SDP. [Command={0}][Code={1}]".format(cmd, code))
@@ -829,9 +829,3 @@ def separate_out_esm_packages(self, packages, package_versions):
829829
def get_package_install_expected_avg_time_in_seconds(self):
830830
return self.package_install_expected_avg_time_in_seconds
831831

832-
# region - AzLinux specializations
833-
class AzL3TdnfPackageManager(object):
834-
"""AzLinux Package Manager class for TDNF package manager."""
835-
def __init__(self):
836-
self.TDNF_MINIMUM_VERSION_FOR_STRICT_SDP = "3.5.8-3.azl3" # minimum version of tdnf required to support Strict SDP in Azure Linux
837-

src/core/tests/Test_TdnfPackageManager.py renamed to src/core/tests/Test_AzL3TdnfPackageManager.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
from core.src.external_dependencies import distro
3131

3232

33-
class TestTdnfPackageManager(unittest.TestCase):
33+
class TestAzL3TdnfPackageManager(unittest.TestCase):
3434
def setUp(self):
3535
self.runtime = RuntimeCompositor(ArgumentComposer().get_composed_arguments(), True, Constants.TDNF)
3636
self.container = self.runtime.container

0 commit comments

Comments
 (0)