diff options
author | James Tanner <tanner.jc@gmail.com> | 2013-12-02 11:56:38 -0500 |
---|---|---|
committer | James Tanner <tanner.jc@gmail.com> | 2013-12-18 20:25:15 -0500 |
commit | e984eae6bd386dc1c38f8d8a01392b59a3269cfe (patch) | |
tree | 0cc3d0892700bf7a5ec3a41434a78b62b61488a8 | |
parent | fbdc2bf02df128317d87496576761b6c1061a339 (diff) | |
download | ansible-e984eae6bd386dc1c38f8d8a01392b59a3269cfe.tar.gz |
Fixes #4796 handle unicodedecode errors from dmidecode output
-rwxr-xr-x | library/system/setup | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/library/system/setup b/library/system/setup index 7b0fd70e80..353cf6f6d3 100755 --- a/library/system/setup +++ b/library/system/setup @@ -632,7 +632,13 @@ class LinuxHardware(Hardware): (rc, out, err) = module.run_command('%s -s %s' % (dmi_bin, v)) if rc == 0: # Strip out commented lines (specific dmidecode output) - self.facts[k] = ''.join([ line for line in out.split('\n') if not line.startswith('#') ]) + thisvalue = ''.join([ line for line in out.split('\n') if not line.startswith('#') ]) + try: + json.dumps(thisvalue) + except UnicodeDecodeError: + thisvalue = "NA" + + self.facts[k] = thisvalue else: self.facts[k] = 'NA' else: |