From 93d8723b98a89c210209b521c206a6b65c686c6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niccol=C3=B2=20Maggioni?= Date: Fri, 17 Mar 2017 11:50:31 +0100 Subject: [PATCH] Improved handling of partially missing parameters --- proxmox.py | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/proxmox.py b/proxmox.py index 419beb9..01a0bcb 100755 --- a/proxmox.py +++ b/proxmox.py @@ -94,21 +94,25 @@ class ProxmoxAPI(object): os.path.dirname(os.path.abspath(__file__)), os.path.splitext(os.path.basename(__file__))[0]+".json" ) + if not options.url or not options.username or not options.password: if os.path.isfile(config_path): with open(config_path, "r") as config_file: config_data = json.load(config_file) - try: - options.url = config_data["url"] - except KeyError: - options.url = None - try: - options.username = config_data["username"] - except KeyError: - options.username = None - try: - options.password = config_data["password"] - except KeyError: - options.password = None + if not options.url: + try: + options.url = config_data["url"] + except KeyError: + options.url = None + if not options.username: + try: + options.username = config_data["username"] + except KeyError: + options.username = None + if not options.password: + try: + options.password = config_data["password"] + except KeyError: + options.password = None if not options.url: raise Exception('Missing mandatory parameter --url (or PROXMOX_URL or "url" key in config file).')