harness: backup/restore pass -C -o; catalogue fetch re-clones clean
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is failing

Two fixes surfaced by the first real recipe-ci run through Drone:
- abra app backup/restore now pass -C -o (current checkout, no remote fetch) like
  every other recipe-touching call — without -o they fetch recipe tags from the
  (private) remote and fail 'authentication required: Unauthorized'.
- fetch_recipe's catalogue path rm's the recipe dir first so a leftover private-mirror
  remote from a prior SRC+REF run can't poison version resolution / backup.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-27 03:05:03 +01:00
parent bc8baae2c0
commit 7aa0346902
2 changed files with 10 additions and 2 deletions

View File

@ -108,11 +108,14 @@ def upgrade(domain: str, version: Optional[str] = None, timeout: int = 900) -> N
def backup_create(domain: str, timeout: int = 900) -> None:
_run_pty(["app", "backup", "create", domain, "-n"], timeout=timeout)
# -C -o: use the current recipe checkout, no remote fetch — like every other recipe-touching
# call (DECISIONS.md). Without -o, abra tries to fetch recipe tags from the (possibly private)
# remote and fails "authentication required: Unauthorized".
_run_pty(["app", "backup", "create", domain, "-n", "-C", "-o"], timeout=timeout)
def restore(domain: str, timeout: int = 900) -> None:
_run_pty(["app", "restore", domain, "-n"], timeout=timeout)
_run_pty(["app", "restore", domain, "-n", "-C", "-o"], timeout=timeout)
def recipe_versions(recipe: str) -> list[str]: