diff --git a/data_pools_api.py b/data_pools_api.py new file mode 100644 index 0000000..bb45d7b --- /dev/null +++ b/data_pools_api.py @@ -0,0 +1,26 @@ + +#from main import base_url , api_key , requests +import requests + +def data_pools(base_url , api_key): #output data pool info + url= f"http://{base_url}//api/data-pools/" + response = requests.get(url , headers={'Authorization' : api_key}) + + if response.status_code == 200: + data_pools = response.json() + results_data_pools_info = data_pools['results'] + + print("\nData pools overview:") + print(f"\nData pools total: {data_pools['count']}") + print("-" * 44) + for x in results_data_pools_info: + print(" "*14,"Data pool info") + print(f"\nName: {x['verbose_name']}") + print(f"\nUID: {x['id']}") + print(f"\ntype: {x['type']}") + print(f"\nstatus: {x['status']}") + print(f"\nsize: {round((x['size'] / 1024), 1)}Gb") + print("-" * 44) + + else: + print(f"Failed to retrieve data {response.status_code}") \ No newline at end of file diff --git a/main.py b/main.py index 2655221..ce06db7 100644 --- a/main.py +++ b/main.py @@ -2,6 +2,8 @@ import sys import os from cluster_api import * from domain_api import * +from data_pools_api import * +from vm_info_short import * power_state = ["Unknown" , "Off" , "Suspend" , "On"] #3 - on; 2 - suspend; 1 - off; 0 - unknown @@ -120,6 +122,11 @@ while(menu_choice != ""): #main menu loop for x in vm_uuids: vm_info(base_url , api_key , x) + if menu_choice == "5": + data_pools(base_url , api_key) + + if menu_choice == "6": + vm_info_short(base_url , api_key) print("Exiting Utility..") sys.exit() diff --git a/vm_info_short.py b/vm_info_short.py new file mode 100644 index 0000000..f9b4d10 --- /dev/null +++ b/vm_info_short.py @@ -0,0 +1,22 @@ + +#from main import base_url , api_key , requests +import requests + +def vm_info_short(base_url , api_key): #output data pool info + url= f"http://{base_url}//api/domains/" + response = requests.get(url , headers={'Authorization' : api_key}) + + if response.status_code == 200: + vm_info_short = response.json() + results_vm_info_short = vm_info_short['results'] + + print("\nShort VM overview") + print(f"\nVM total: {vm_info_short['count']}") + print("-" * 41) + for x in results_vm_info_short: + print(" "*16,f"VM {x['verbose_name']}") + print(f"UID: {x['id']}") + print("-" * 41) + + else: + print(f"Failed to retrieve data {response.status_code}") \ No newline at end of file