From 5d7ee43ccbc2eb8078c3929025f5ac87a133ebf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Szczepa=C5=84ski?= Date: Mon, 28 May 2018 11:30:40 +0200 Subject: [PATCH] Add argparser to enable specifying config file location Closes-Bug: #1775536 Change-Id: I01f1b26aff941528e40623dddd6c240e7bacc53e --- cvm/__main__.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/cvm/__main__.py b/cvm/__main__.py index 4ea4b53..26d2ef3 100644 --- a/cvm/__main__.py +++ b/cvm/__main__.py @@ -1,5 +1,6 @@ #!/usr/bin/env python +import argparse import sys import gevent @@ -15,8 +16,8 @@ VirtualMachineService, VirtualNetworkService) -def load_config(): - with open('config.yaml', 'r') as ymlfile: +def load_config(config_file): + with open(config_file, 'r') as ymlfile: cfg = yaml.load(ymlfile) esxi_cfg = cfg['esxi'] vcenter_cfg = cfg['vcenter'] @@ -24,8 +25,8 @@ def load_config(): return esxi_cfg, vcenter_cfg, vnc_cfg -def main(): - esxi_cfg, vcenter_cfg, vnc_cfg = load_config() +def main(args): + esxi_cfg, vcenter_cfg, vnc_cfg = load_config(args.config_file) esxi_api_client = ESXiAPIClient(esxi_cfg) event_history_collector = esxi_api_client.create_event_history_collector(const.EVENTS_TO_OBSERVE) @@ -66,8 +67,12 @@ def main(): if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument("-c", action="store", dest="config_file", + default='/etc/contrail/contrail-vcenter-manager/config.yaml') + parsed_args = parser.parse_args() try: - main() + main(parsed_args) sys.exit(0) except KeyboardInterrupt: sys.exit(0)