This commit is contained in:
2025-03-23 23:57:55 +01:00
parent 0f3cb18f77
commit 807468e13a
4 changed files with 115 additions and 0 deletions

80
webhooks.py Normal file
View File

@ -0,0 +1,80 @@
import requests
import json
import getopt
import sys
try:
opts, args = getopt.getopt(sys.argv[1:], "amftDr:bd:sSO", ["command=", "help", "output="])
except getopt.GetoptError as err:
#usage()
sys.exit(2)
output = None
# QJ : getopts
_MODE = "manual"
_FIRST = _TEST = _RESTORE = _BACKUP = _SYNC = _START = _STOP = False
_EXECUTE = True
_DATE = "pick"
for o, a in opts:
if o == "-a":
_MODE = "auto"
elif o in ("-m", "--manual"):
_MODE = "manual"
elif o in ("-f", "--first"):
_FIRST = True
elif o in ("-d", "--date"):
_DATE = a
url = "https://portainer.sectorq.eu/api/auth"
body = {
"password": "l4c1j4yd33Du5lo",
"username": "admin"
}
x = requests.post(url, json=body)
# https://portainer.sectorq.eu/api/stacks/webhooks/02f5acae-1462-49d4-be3f-9d9c6a73a9ab
# https://portainer.sectorq.eu/api/stacks/webhooks/1b355925-5b71-48b5-8406-bc32a68d17ec
cook = x.cookies
apikey = x.cookies.get_dict()["portainer_api_key"]
input(cook)
envs = {}
headers = {"Authorization": "Bearer " + apikey}
input(headers)
url = "https://portainer.sectorq.eu/api/endpoints"
x = requests.get(url, cookies=cook)
data = json.loads(x.text)
for d in data:
print(d["Name"], " : ", d["Id"])
envs[d["Id"]] = d["Name"]
print(envs)
url = "https://portainer.sectorq.eu/api/stacks"
x = requests.get(url, cookies=cook)
data = json.loads(x.text)
#print(data)
for d in data:
if d["Name"] == "bitwarden":
print(d)
#print(d)
print(d["EndpointId"])
try:
print(d["Name"], " : ", envs[int(d["EndpointId"])], " : ", d["AutoUpdate"]["Webhook"])
except:
print(d["Name"], " : ", envs[int(d["EndpointId"])], " : ", "")
url = "https://portainer.sectorq.eu/api/webhooks"
x = requests.get(url, cookies=cook)
data = json.loads(x.text)
#print(data)
f = {'AutoUpdate': {'Interval': '', 'Webhook': '02f5acae-1462-49d4-be3f-9d9c6a73a9ab', 'JobID': '', 'ForceUpdate': False, 'ForcePullImage': True}}
print(headers)
url = "https://portainer.sectorq.eu/api/stacks/527/git"
x = requests.post(url, json=f, headers=headers)
print(x)
data = json.loads(x.text)