DEVX-118: fix: embed token in wiki clone URL for push auth
Post-merge / detect-type (push) Successful in 9s
Post-merge / validate-commit-msg (push) Successful in 9s
Post-merge / vikunja (push) Successful in 19s
Post-merge / sync-wiki (push) Successful in 24s
Post-merge / configure-repo (push) Successful in 14s
Post-merge / release (push) Successful in 34s
Post-merge / publish (push) Successful in 19s
Post-merge / badges (push) Failing after 29s

The wiki Git push failed with "could not read Username" because the
clone URL didn't include credentials. Use token@host URL format so
both clone and push authenticate properly.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
emil
2026-07-06 11:46:05 +02:00
co-authored by Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
parent 6402f31345
commit ae68df63f1
+5 -1
View File
@@ -32,6 +32,7 @@ import re
import subprocess # nosec B404
import tempfile
from pathlib import Path
from urllib.parse import urlparse
import click
from dotenv import load_dotenv # pyright: ignore[reportMissingImports,reportUnknownVariableType]
@@ -102,7 +103,10 @@ def get_wiki_clone_url(owner: str, repo: str, token: str) -> str:
# Gitea wiki repos are at {clone_url}.wiki.git
# Extract base URL from API URL
base = GITEA_API_URL.rsplit("/api/v1", 1)[0]
return f"{base}/{owner}/{repo}.wiki.git"
# Embed token in URL for both clone and push auth
# Format: https://token@host/owner/repo.wiki.git
parsed = urlparse(base)
return f"{parsed.scheme}://{token}@{parsed.hostname}/{owner}/{repo}.wiki.git"
def clone_wiki(wiki_url: str, dest: Path) -> bool: