summaryrefslogtreecommitdiff
path: root/tests/paas-setup-check/send-vmb-messages.py
diff options
context:
space:
mode:
authorckonstanski <kostcarl@isu.edu>2026-07-30 18:17:14 -0600
committerckonstanski <kostcarl@isu.edu>2026-07-30 18:17:14 -0600
commit640ff61422bc0ee3966941b93d9889ddbbd38d77 (patch)
treeabf1c08f5d38ee53ec8b29dc4f425722517505e6 /tests/paas-setup-check/send-vmb-messages.py
parent22dae02a86c1fce71091bfa5289cf99abba1b217 (diff)
more filesHEADmaster
Diffstat (limited to 'tests/paas-setup-check/send-vmb-messages.py')
-rw-r--r--tests/paas-setup-check/send-vmb-messages.py73
1 files changed, 73 insertions, 0 deletions
diff --git a/tests/paas-setup-check/send-vmb-messages.py b/tests/paas-setup-check/send-vmb-messages.py
new file mode 100644
index 0000000..d94004f
--- /dev/null
+++ b/tests/paas-setup-check/send-vmb-messages.py
@@ -0,0 +1,73 @@
+import requests
+import sys
+import csv
+import time
+
+class SendVMBMessages():
+ auth = ('SVC-Far-Edge','QxbV44IU4P7t7rN44dxK4xyPB');
+ def _is_network_ok(self, site_name):
+ url = 'https://middleware.vcpfe.vzwops.com/orchestration/remote-regions/' + site_name + '/site-details'
+
+ resp = requests.get(url, auth=self.auth, verify=False)
+ if resp.status_code == 500:
+ print(site_name + ' ssh network unreachable')
+ return False, resp.status_code
+
+ print(resp.json())
+ namespaces = resp.json()['setup_details']['namespaces']
+ for namespace in namespaces:
+ print('namespace: ' + namespace)
+ if 'Unable to connect to the server' in namespace:
+ print(site_name + ' k8s network unreachable')
+ return False, 500
+
+ network_no = len(resp.json()['setup_details']['network_details'])
+ if network_no and network_no >= 15:
+ print(site_name + ' network setup succeeded')
+ return True, resp.status_code
+ else:
+ return False, resp.status_code #200
+
+ def run_setup_cluster(self, site_name, network_setup=True):
+ try:
+ namespace_setup_url = 'https://middleware.vcpfe.vzwops.com/orchestration/setup-cluster/' + site_name
+ #namespace_setup_url = 'http://localhost:8000/orchestration/setup-cluster/' + site_name
+ print('calling setup-cluster with network_setup : ' + str(network_setup) )
+ payload = {'network_setup': network_setup}
+ resp = requests.get(namespace_setup_url, auth=self.auth, params=payload, verify=False)
+ if resp.status_code == 500:
+ print(site_name + ' setup-cluster call failed')
+ else:
+ print('called sending message to VMB for ' + site_name)
+ except Exception as e:
+ print(e)
+
+if __name__ == '__main__':
+
+ if len(sys.argv) < 1:
+ print("Usage:")
+ print(" python SendVMBMessages.py <site_list_csv_file>")
+ exit(0)
+
+ site_list_file = sys.argv[1]
+ print("Input WR installed site list file:" + site_list_file)
+ sendVMBMessages = SendVMBMessages()
+
+ with open(site_list_file) as csv_file:
+ csv_reader = csv.reader(csv_file, delimiter=',')
+ line_count = 0
+ for row in csv_reader:
+ print(f'\t{row[0]}')
+ #site_name = 'wsbomagj-d325030-001';
+ site_name = row[0];
+
+ network_ok, status_code = sendVMBMessages._is_network_ok(site_name)
+ if status_code != 500:
+ if network_ok:
+ sendVMBMessages.run_setup_cluster(site_name, network_setup=False)
+ else:
+ sendVMBMessages.run_setup_cluster(site_name, network_setup=True)
+ line_count += 1
+ time.sleep(3)
+
+ print(f'Processed {line_count} lines.')