2e705c3b3d
OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:saltstack/salt?expand=0&rev=75
50 lines
2.6 KiB
Diff
50 lines
2.6 KiB
Diff
From 6035aef0c80ae12a068bee7613c5b7f7f48aa9d3 Mon Sep 17 00:00:00 2001
|
|
From: Bo Maryniuk <bo@suse.de>
|
|
Date: Mon, 18 Jan 2016 16:28:48 +0100
|
|
Subject: [PATCH 03/12] Check if byte strings are properly encoded in UTF-8
|
|
|
|
Rename keywords arguments variable to a default name.
|
|
---
|
|
salt/modules/zypper.py | 11 ++++++-----
|
|
1 file changed, 6 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/salt/modules/zypper.py b/salt/modules/zypper.py
|
|
index fecb671..27b00d5 100644
|
|
--- a/salt/modules/zypper.py
|
|
+++ b/salt/modules/zypper.py
|
|
@@ -164,9 +164,9 @@ def info_installed(*names, **kwargs):
|
|
summary, description.
|
|
|
|
:param errors:
|
|
- Handle RPM field errors (true|false). By default, various mistakes in the textual fields are simply ignored and
|
|
- omitted from the data. Otherwise a field with a mistake is not returned, instead a 'N/A (bad UTF-8)'
|
|
- (not available, broken) text is returned.
|
|
+ Handle RPM field errors. If 'ignore' is chosen, then various mistakes are simply ignored and omitted
|
|
+ from the texts or strings. If 'report' is chonen, then a field with a mistake is not returned, instead
|
|
+ a 'N/A (broken)' (not available, broken) text is placed.
|
|
|
|
Valid attributes are:
|
|
ignore, report
|
|
@@ -179,7 +179,8 @@ def info_installed(*names, **kwargs):
|
|
salt '*' pkg.info_installed <package1> <package2> <package3> ...
|
|
salt '*' pkg.info_installed <package1> attr=version,vendor
|
|
salt '*' pkg.info_installed <package1> <package2> <package3> ... attr=version,vendor
|
|
- salt '*' pkg.info_installed <package1> <package2> <package3> ... attr=version,vendor errors=true
|
|
+ salt '*' pkg.info_installed <package1> <package2> <package3> ... attr=version,vendor errors=ignore
|
|
+ salt '*' pkg.info_installed <package1> <package2> <package3> ... attr=version,vendor errors=report
|
|
'''
|
|
ret = dict()
|
|
for pkg_name, pkg_nfo in __salt__['lowpkg.info'](*names, **kwargs).items():
|
|
@@ -190,7 +191,7 @@ def info_installed(*names, **kwargs):
|
|
# Check, if string is encoded in a proper UTF-8
|
|
value_ = value.decode('UTF-8', 'ignore').encode('UTF-8', 'ignore')
|
|
if value != value_:
|
|
- value = kwargs.get('errors') and value_ or 'N/A (invalid UTF-8)'
|
|
+ value = kwargs.get('errors', 'ignore') == 'ignore' and value_ or 'N/A (invalid UTF-8)'
|
|
log.error('Package {0} has bad UTF-8 code in {1}: {2}'.format(pkg_name, key, value))
|
|
if key == 'source_rpm':
|
|
t_nfo['source'] = value
|
|
--
|
|
2.1.4
|
|
|