diff --git a/clean.py b/clean.py index 1075ecd..b44acd0 100755 --- a/clean.py +++ b/clean.py @@ -24,10 +24,33 @@ import time import logging import requests import configparser +import argparse + +# Parse all arguments +parser = argparse.ArgumentParser(description="Push JSON connfig to AlkirAPI") +parser.add_argument("-t", "--tenant", type=str, default='alkira.cnf', help="location of alikira.cnf (default: alkira.cnf") +parser.add_argument("-v", "--verbose", type=int, default=0, help="Verbose level 0 or 1 (default: 0") +parser.add_argument("-p", "--pretty", help="make the JSON pretty!", action="store_true") + +try: + args = parser.parse_args() + ALKIRA_CONFIG = args.tenant + +except argparse.ArgumentError as e: + print(str(e)) + sys.exit() + +try: + loglevel = { + 0: logging.INFO, + 1: logging.DEBUG + }[args.verbose] +except KeyError: + loglevel = logging.INFO ############################################### -ALKIRA_CONFIG= "/Users/mischa/Alkira/xDev/alkira.cnf" +# Tenant config if not os.path.isfile(ALKIRA_CONFIG): logging.error(f"The config file {ALKIRA_CONFIG} doesn't exist") sys.exit(1) @@ -39,15 +62,15 @@ ALKIRA_USERNAME = alkira.get('alkira', 'ALKIRA_USERNAME') ALKIRA_PASSWORD = alkira.get('alkira', 'ALKIRA_PASSWORD') ALKIRA_BASE_URI = f'https://{ALKIRA_TENANT}/api' +# Set logging.INFO to logging.DEBUG for debug information +logging.basicConfig(level=loglevel) +logging = logging.getLogger('AlkiraAPI') + ############################################### # Set default headers headers = {'Content-Type': "application/json"} -# Set logging.INFO to logging.DEBUG for debug information -logging.basicConfig(level=logging.INFO) -logging = logging.getLogger('AlkiraAPI') - # Naming exceptions service_exceptions = { "ocivcn": "oci-vcn-", @@ -110,7 +133,11 @@ logging.info(f'Tenant ID: {tenantNetworkId}') logging.info('Checking Connectors') r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/connectors') data = r.json() -logging.debug(json.dumps(data, indent=4)) +if args.pretty: + logging.debug(json.dumps(data, indent=4)) +else: + logging.debug(json.dumps(data)) + for item in data: name = item.get('name') connectorId = item.get('id') @@ -126,7 +153,11 @@ for item in data: logging.info('Checking services') r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/services') data = r.json() -logging.debug(json.dumps(data, indent=4)) +if args.pretty: + logging.debug(json.dumps(data, indent=4)) +else: + logging.debug(json.dumps(data)) + for item in data: name = item.get('name') serviceId = item.get('id') @@ -142,7 +173,11 @@ for item in data: logging.info('Checking Global CIDR') r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/global-cidr-lists') data = r.json() -logging.debug(json.dumps(data, indent=4)) +if args.pretty: + logging.debug(json.dumps(data, indent=4)) +else: + logging.debug(json.dumps(data)) + for item in data: name = item.get('name') GlobalCidrListId = item.get('id') diff --git a/get.py b/get.py index 4a6193d..7f5bd97 100755 --- a/get.py +++ b/get.py @@ -60,15 +60,15 @@ ALKIRA_USERNAME = alkira.get('alkira', 'ALKIRA_USERNAME') ALKIRA_PASSWORD = alkira.get('alkira', 'ALKIRA_PASSWORD') ALKIRA_BASE_URI = f'https://{ALKIRA_TENANT}/api' +# Set logging.INFO to logging.DEBUG for debug information +logging.basicConfig(level=loglevel) +logging = logging.getLogger('AlkiraAPI') + ############################################### # Set default headers headers = {'Content-Type': "application/json"} -# Set logging.INFO to logging.DEBUG for debug information -logging.basicConfig(level=loglevel) -logging = logging.getLogger('AlkiraAPI') - # Naming exceptions service_exceptions = { "saas": "internet",