diff --git a/src/core/src/package_managers/AptitudePackageManager.py b/src/core/src/package_managers/AptitudePackageManager.py index a0d47280..df21aa53 100644 --- a/src/core/src/package_managers/AptitudePackageManager.py +++ b/src/core/src/package_managers/AptitudePackageManager.py @@ -39,7 +39,7 @@ def __init__(self, env_layer, execution_config, composite_logger, telemetry_writ # Support to get updates and their dependencies self.security_sources_list = os.path.join(execution_config.temp_folder, 'msft-patch-security-{0}.list'.format(security_list_guid)) - self.prep_security_sources_list_cmd = 'sudo grep security /etc/apt/sources.list > ' + os.path.normpath(self.security_sources_list) + self.prep_security_sources_list_cmd = 'sudo grep -hR security /etc/apt/sources.list /etc/apt/sources.list.d/ > ' + os.path.normpath(self.security_sources_list) self.dist_upgrade_simulation_cmd_template = 'LANG=en_US.UTF8 sudo apt-get -s dist-upgrade ' # Dist-upgrade simulation template - needs to be replaced before use; sudo is used as sometimes the sources list needs sudo to be readable self.single_package_check_versions = 'apt-cache madison ' self.single_package_find_installed_dpkg = 'sudo dpkg -s ' @@ -182,9 +182,6 @@ def get_security_updates(self): code, out = self.env_layer.run_command_output(self.prep_security_sources_list_cmd, False, False) if code != 0: self.composite_logger.log_warning(" - SLP:: Return code: " + str(code) + ", Output: \n|\t" + "\n|\t".join(out.splitlines())) - error_msg = 'Unexpected return code (' + str(code) + ') from command: ' + self.prep_security_sources_list_cmd - self.status_handler.add_error_to_status(error_msg, Constants.PatchOperationErrorCodes.PACKAGE_MANAGER_FAILURE) - raise Exception(error_msg, "[{0}]".format(Constants.ERROR_ADDED_TO_STATUS)) cmd = self.dist_upgrade_simulation_cmd_template.replace('', '-oDir::Etc::Sourcelist=' + self.security_sources_list) out = self.invoke_package_manager(cmd) diff --git a/src/core/tests/library/LegacyEnvLayerExtensions.py b/src/core/tests/library/LegacyEnvLayerExtensions.py index 667077f5..9e9d3224 100644 --- a/src/core/tests/library/LegacyEnvLayerExtensions.py +++ b/src/core/tests/library/LegacyEnvLayerExtensions.py @@ -526,7 +526,7 @@ def run_command_output(self, cmd, no_output=False, chk_err=True): output = " bash | 4.3-14ubuntu1.3 | http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages\n" + \ " bash | 4.3-14ubuntu1.2 | http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages\n" + \ " bash | 4.3-14ubuntu1 | http://us.archive.ubuntu.com/ubuntu xenial/main amd64 Packages" - elif cmd.find('sudo grep security /etc/apt/sources.list >') > -1: + elif cmd.find('sudo grep -hR security /etc/apt/sources.list /etc/apt/sources.list.d/ >') > -1: self.write_to_file(os.path.join(self.temp_folder_path, "temp2.list"), "test temp file 2") code = 0 output = "tmp file created"