From 1f1361a3cae0bcaf82ee96d0736ed23b7763127c Mon Sep 17 00:00:00 2001 From: Florian Fischer <florian.fl.fischer@fau.de> Date: Fri, 13 Dec 2019 17:26:59 +0100 Subject: [PATCH] fix facter bugs found by pylint --- src/facter.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/facter.py b/src/facter.py index 4c1c14d..5141b78 100644 --- a/src/facter.py +++ b/src/facter.py @@ -23,10 +23,10 @@ import json import multiprocessing import os import platform -import subprocess +from subprocess import CalledProcessError import src.globalvars as gv -from src.util import print_error, print_info, run_cmd +from src.util import print_debug, print_info, print_warn, run_cmd FACTS = {} @@ -73,12 +73,13 @@ def load_facts(path=None): filename = "facts" else: if os.path.isdir(path): - filename = os.path.join(path, self.name) + filename = os.path.join(path, "facts") else: filename = os.path.splitext(path)[0] if os.path.exists(filename + ".json"): filename += ".json" + global FACTS with open(filename, "r") as f: FACTS = json.load(f) elif os.path.exists(filename + ".save"): @@ -167,12 +168,11 @@ def libc_ver(executable=None): def exe_version(executable, version_flag="--version"): """Return version of executable""" - proc = subprocess.run([executable, version_flag], - universal_newlines=True, - stdout=subprocess.PIPE) - - if proc.returncode != 0: - print_warning(f"failed to get version of {executable}") + try: + proc = run_cmd([executable, version_flag], capture=True) + except CalledProcessError as e: + print_warn(f"failed to get version of {executable}") + print_debug(e.stderr) return "" return proc.stdout[:-1] -- GitLab