Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP1:GA
salt.9543
update-error-list-for-zypper.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File update-error-list-for-zypper.patch of Package salt.9543
From ecade8f79736362bae4192b4ea7e1ad3cf8ce6a6 Mon Sep 17 00:00:00 2001 From: Bo Maryniuk <bo@suse.de> Date: Wed, 26 Sep 2018 17:54:53 +0200 Subject: [PATCH] Update error list for zypper Add error logging --- salt/modules/zypper.py | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/salt/modules/zypper.py b/salt/modules/zypper.py index 308033cf1d..a80d43741e 100644 --- a/salt/modules/zypper.py +++ b/salt/modules/zypper.py @@ -75,7 +75,25 @@ class _Zypper(object): Allows serial zypper calls (first came, first won). ''' - SUCCESS_EXIT_CODES = [0, 100, 101, 102, 103] + SUCCESS_EXIT_CODES = { + 0: 'Successful run of zypper with no special info.', + 100: 'Patches are available for installation.', + 101: 'Security patches are available for installation.', + 102: 'Installation successful, reboot required.', + 103: 'Installation succesful, restart of the package manager itself required.', + } + + WARNING_EXIT_CODES = { + 6: 'No repositories are defined.', + 7: 'The ZYPP library is locked.', + 106: 'Some repository had to be disabled temporarily because it failed to refresh. ' + 'You should check your repository configuration (e.g. zypper ref -f).', + 107: 'Installation basically succeeded, but some of the packages %post install scripts returned an error. ' + 'These packages were successfully unpacked to disk and are registered in the rpm database, ' + 'but due to the failed install script they may not work as expected. The failed scripts output might ' + 'reveal what actually went wrong. Any scripts output is also logged to /var/log/zypp/history.' + } + LOCK_EXIT_CODE = 7 XML_DIRECTIVES = ['-x', '--xmlout'] ZYPPER_LOCK = '/var/run/zypp.pid' @@ -188,7 +206,15 @@ class _Zypper(object): :return: ''' - return self.exit_code not in self.SUCCESS_EXIT_CODES + if self.exit_code: + msg = self.SUCCESS_EXIT_CODES.get(self.exit_code) + if msg: + log.info(msg) + msg = self.WARNING_EXIT_CODES.get(self.exit_code) + if msg: + log.warning(msg) + + return self.exit_code not in self.SUCCESS_EXIT_CODES and self.exit_code not in self.WARNING_EXIT_CODES def _is_lock(self): ''' -- 2.19.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor