adding more pretty flags

This commit is contained in:
mischa 2022-06-17 15:53:16 +02:00
parent 87914c17a1
commit 4e11f462f7
2 changed files with 47 additions and 12 deletions

View File

@ -24,10 +24,33 @@ import time
import logging import logging
import requests import requests
import configparser 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): if not os.path.isfile(ALKIRA_CONFIG):
logging.error(f"The config file {ALKIRA_CONFIG} doesn't exist") logging.error(f"The config file {ALKIRA_CONFIG} doesn't exist")
sys.exit(1) sys.exit(1)
@ -39,15 +62,15 @@ ALKIRA_USERNAME = alkira.get('alkira', 'ALKIRA_USERNAME')
ALKIRA_PASSWORD = alkira.get('alkira', 'ALKIRA_PASSWORD') ALKIRA_PASSWORD = alkira.get('alkira', 'ALKIRA_PASSWORD')
ALKIRA_BASE_URI = f'https://{ALKIRA_TENANT}/api' 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 # Set default headers
headers = {'Content-Type': "application/json"} 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 # Naming exceptions
service_exceptions = { service_exceptions = {
"ocivcn": "oci-vcn-", "ocivcn": "oci-vcn-",
@ -110,7 +133,11 @@ logging.info(f'Tenant ID: {tenantNetworkId}')
logging.info('Checking Connectors') logging.info('Checking Connectors')
r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/connectors') r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/connectors')
data = r.json() data = r.json()
if args.pretty:
logging.debug(json.dumps(data, indent=4)) logging.debug(json.dumps(data, indent=4))
else:
logging.debug(json.dumps(data))
for item in data: for item in data:
name = item.get('name') name = item.get('name')
connectorId = item.get('id') connectorId = item.get('id')
@ -126,7 +153,11 @@ for item in data:
logging.info('Checking services') logging.info('Checking services')
r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/services') r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/services')
data = r.json() data = r.json()
if args.pretty:
logging.debug(json.dumps(data, indent=4)) logging.debug(json.dumps(data, indent=4))
else:
logging.debug(json.dumps(data))
for item in data: for item in data:
name = item.get('name') name = item.get('name')
serviceId = item.get('id') serviceId = item.get('id')
@ -142,7 +173,11 @@ for item in data:
logging.info('Checking Global CIDR') logging.info('Checking Global CIDR')
r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/global-cidr-lists') r = alkira_get(s, f'/tenantnetworks/{tenantNetworkId}/global-cidr-lists')
data = r.json() data = r.json()
if args.pretty:
logging.debug(json.dumps(data, indent=4)) logging.debug(json.dumps(data, indent=4))
else:
logging.debug(json.dumps(data))
for item in data: for item in data:
name = item.get('name') name = item.get('name')
GlobalCidrListId = item.get('id') GlobalCidrListId = item.get('id')

8
get.py
View File

@ -60,15 +60,15 @@ ALKIRA_USERNAME = alkira.get('alkira', 'ALKIRA_USERNAME')
ALKIRA_PASSWORD = alkira.get('alkira', 'ALKIRA_PASSWORD') ALKIRA_PASSWORD = alkira.get('alkira', 'ALKIRA_PASSWORD')
ALKIRA_BASE_URI = f'https://{ALKIRA_TENANT}/api' 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 # Set default headers
headers = {'Content-Type': "application/json"} headers = {'Content-Type': "application/json"}
# Set logging.INFO to logging.DEBUG for debug information
logging.basicConfig(level=loglevel)
logging = logging.getLogger('AlkiraAPI')
# Naming exceptions # Naming exceptions
service_exceptions = { service_exceptions = {
"saas": "internet", "saas": "internet",