fix(wizard): aggiungi git safe.directory prima del clone
Ubuntu 24.04 ha git >= 2.35 che rifiuta operazioni sui repo con ownership mista. Durante install /opt/argos/app/ preesiste come argos:argos (creato da first-setup.sh) ma il clone come root crea i file dentro come root:root. Il successivo 'git remote set-url' (eseguito come root) falliva con 'dubious ownership'. Fix: registriamo /opt/argos/app come safe.directory globale prima del clone, cosi' i comandi git successivi non sono bloccati.
This commit is contained in:
parent
ec1b284527
commit
41cb97bea8
|
|
@ -309,6 +309,10 @@ def install(data):
|
||||||
auth_url = f"https://{GITEA_BOT_USER}:{gitea_token}@{gitea_host[len('https://'):]}{GITEA_REPO_PATH}"
|
auth_url = f"https://{GITEA_BOT_USER}:{gitea_token}@{gitea_host[len('https://'):]}{GITEA_REPO_PATH}"
|
||||||
APP_DIR.parent.mkdir(parents=True, exist_ok=True)
|
APP_DIR.parent.mkdir(parents=True, exist_ok=True)
|
||||||
# Clona con URL autenticato
|
# Clona con URL autenticato
|
||||||
|
# Git >= 2.35 rifiuta operazioni su repo con ownership "dubbia"
|
||||||
|
# (es. clone come root in dir pre-creata come argos). Aggiungiamo
|
||||||
|
# /opt/argos/app a safe.directory globale PRIMA del clone.
|
||||||
|
run(f"git config --global --add safe.directory {APP_DIR}")
|
||||||
run(f"git clone {auth_url} {APP_DIR}")
|
run(f"git clone {auth_url} {APP_DIR}")
|
||||||
# Dopo clone, ripulisci .git/config rimuovendo il token
|
# Dopo clone, ripulisci .git/config rimuovendo il token
|
||||||
clean_url = f"{gitea_host}{GITEA_REPO_PATH}"
|
clean_url = f"{gitea_host}{GITEA_REPO_PATH}"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue