diff --git a/skills/devops/gitea-release-autodeploy/scripts/gitea-latest.py b/skills/devops/gitea-release-autodeploy/scripts/gitea-latest.py new file mode 100644 index 0000000..085486f --- /dev/null +++ b/skills/devops/gitea-release-autodeploy/scripts/gitea-latest.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python3 +"""Latest release tag Gitea (sans 'v') — fiable là où curl se prend des 404 du tunnel Cloudflare. +Usage: gitea-latest.py (token lu dans ~/workspace/.env, jamais affiché) +Échec silencieux : sortie vide = API indisponible (le script appelant garde son garde-fou).""" +import json, re, sys, urllib.request +repo = sys.argv[1] +tok = re.search(r"^GITEA_TOKEN=(.+)$", open("/home/bruno/workspace/.env").read(), re.M)[1].strip() +req = urllib.request.Request(f"https://git.dracodev.net/api/v1/repos/{repo}/releases/latest", + headers={"Authorization": f"token {tok}", "User-Agent": "curl/8.0"}) +try: + print(json.load(urllib.request.urlopen(req, timeout=20)).get("tag_name", "").lstrip("v")) +except Exception: + pass