38 lines
1.4 KiB
Python
38 lines
1.4 KiB
Python
import time
|
|
import requests
|
|
|
|
|
|
|
|
url = "" #deployment portal url
|
|
s = requests.Session()
|
|
cookie = "" #cookie
|
|
x_xsrf_token = "" # token
|
|
s.headers.update({'cookie': cookie, 'x-xsrf-token': x_xsrf_token})
|
|
list_manifest_path = "/api/manifest/list"
|
|
r = s.get(url + list_manifest_path)
|
|
manifest_list = r.json()
|
|
|
|
for i in manifest_list:
|
|
perform_post = False
|
|
r = s.get(url + "/api/manifest/" + str(i['id']))
|
|
manifest = r.json()
|
|
if manifest['name'] == 'deployment-test':
|
|
if 'deployment' in manifest:
|
|
deployment = manifest['deployment']
|
|
if 'alerts' in deployment:
|
|
alerts = deployment['alerts']
|
|
for alert_type, alert_list in alerts.items():
|
|
for alert in alert_list:
|
|
if isinstance(alert, dict) and 'threshold' in alert and isinstance(alert['threshold'], str) and alert['threshold'].isdigit():
|
|
alert['threshold'] = int(alert['threshold'])
|
|
|
|
if 'elasticSearch' in deployment:
|
|
elasticSearch = deployment['elasticSearch']
|
|
if 'instance' in elasticSearch:
|
|
instance = elasticSearch['instance']
|
|
instance['cpu'] = int(instance['cpu'])
|
|
|
|
response = s.post(url + "/api/manifest", json=manifest)
|
|
print("{} response of post is {}".format(i['id'], response.text))
|
|
time.sleep(2)
|