You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
9.4 KiB
9.4 KiB
<html>
<head>
</head>
</html>
In [53]:
import json
import os
import pprint
import requests
headers = {
"Authorization": "os.env(directus_token)",
"Content-Type": "application/json",
}
response = requests.get(
"https://cms.donavanaldrich.com/items/containers", headers=headers
)
data = response.json()
# pprint.pprint(items)
items = data["data"]
In [ ]:
In [68]:
for item in items:
raw = item["raw"]
name = raw["Name"]
image = raw["Config"]["Image"]
image = image.replace(":latest", "")
name = name.replace("/", "")
try:
item["ui_port"] = raw["Config"]["Labels"][
"traefik.http.services." + name + ".loadbalancer.server.port"
]
router = raw["Config"]["Labels"]["traefik.http.routers." + name + ".rule"]
item["host_url"] = re.findall("Host\(`([^\)]+)`\)", router)
item["docs_url"] = raw["Config"]["Labels"][
"org.opencontainers.image.documentation"
]
item["image_url"] = raw["Config"]["Labels"]["org.opencontainers.image.source"]
except:
foo = "bar"
headers = {
"Authorization": "os.env(directus_token)",
"Content-Type": "application/json",
}
response = requests.patch(
"https://cms.donavanaldrich.com/items/containers/" + str(item["id"]),
headers=headers,
json=(item),
)
print(response)
<Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [500]> <Response [200]> <Response [500]> <Response [500]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]>
In [68]:
item = items[0]
raw = item["raw"]
name = raw["Name"]
item["ui_port"] = raw["Config"]["Labels"][
"traefik.http.services." + name + ".loadbalancer.server.port"
]
router = raw["Config"]["Labels"]["traefik.http.routers." + name + ".rule"]
item["host_url"] = re.findall("Host\(`([^\)]+)`\)", router)
print(response)
<Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [500]> <Response [200]> <Response [500]> <Response [500]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [200]> <Response [500]> <Response [200]> <Response [200]> <Response [200]>
In [ ]:
In [ ]: