-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathapi_inventory.py
More file actions
45 lines (36 loc) · 1.37 KB
/
api_inventory.py
File metadata and controls
45 lines (36 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import requests
from log_setup import Logging
from program_data import PDApi
"""
NetApp / SolidFire
CPE
mnode support utility
"""
"""
inventory end point tasks
https://mnodeip/inventory/1/
"""
# set up logging
logmsg = Logging.logmsg()
# disable ssl warnings so the log doesn't fill up
requests.packages.urllib3.disable_warnings()
class Inventory():
def refresh_inventory(repo):
""" refresh the current inventory """
logmsg.info("Refreshing inventory and checking for errors. Please wait. This may take a while")
url = f'{repo.base_url}/inventory/1/installations/{repo.parent_id}?refresh=true'
json_return = PDApi.send_get_return_json(repo, url, debug=repo.debug)
if json_return is not None:
return json_return
def get_compute_upgrades(repo):
""" return compute upgrade json """
url = f'{repo.base_url}/inventory/1/installations/{repo.parent_id}/compute/upgrades?refresh=false'
json_return = PDApi.send_get_return_json(repo, url, debug=repo.debug)
if json_return is not None:
return json_return
def get_storage_upgrades(repo):
""" return storage upgrade json """
url = f'{repo.base_url}/inventory/1/installations/{repo.parent_id}/storage/upgrades?refresh=false'
json_return = PDApi.send_get_return_json(repo, url, debug=repo.debug)
if json_return is not None:
return json_return