fix: harden dev project-clone activation (fail-loud, fix ssh URLs, github host key) #166
No reviewers
Labels
No labels
bug
enhancement
in-progress
needs-info
needs-triage
p0
ready-for-agent
ready-for-human
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Cloonar/nixos!166
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/dev-projects-clone-robust"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hardens the home-manager
projectsclone activation after a cattle-dev cloning bug (#161).Root cause (already fixed in bulk by
1fcfcb9): the clone URLs usedssh://forgejo@git.cloonar.com:Cloonar/repo.git— in anssh://URL the colon is a port, so SSH tried port "Cloonar" and the clone failed instantly. On the old microvm/homewas persisted so the burst only ran once and the survivors (the few already on/path) stuck; the cattle box re-runs it fresh every install, exposing it.2>/dev/nullon every clone is why it stayed invisible for hours.This PR finishes + hardens it:
1fcfcb9missed:infrastructure/actions(still:), and the github/gitlab clones (ssh://git@github.com:…→ scp-formgit@github.com:…).github.comhost key (onlygit.cloonar.com/gitlab weressh-keyscaned).clone()helper: idempotent (skips existing),mkdir -ps the parent, and logs failures (projects: FAILED to clone …) instead of2>/dev/null— so the next breakage is visible in the activation journal, not silent.nb-safe: its repos already exist → skipped; the helper + extra host key are pure improvements.
Note: github/gitlab clones still need a github/gitlab key for dominik (
dominik@dev2is forgejo-only) — they'll now fail visibly on auth rather than silently on a bad URL. Provisioning that key (sops) is separate.Pre-commit dry-build green for all hosts. (Eval validates the Nix; the clone runtime is verified on the box after deploy.)
Part of #161.