Port up-to-date.py converger into ansible: repos role (live-layout reconcile) #208

Closed
opened 2026-06-04 07:28:54 +00:00 by coilysiren · 0 comments
Owner

What

Port the hand-rolled fleet converger (agentic-os-kai/scripts/up-to-date.py)
into this repo's existing ansible subsystem, rather than reinventing it. First
slice: the repos role - reconcile local clones against the live repo layout.

  • ansible/library/repo_registry.py - read-only module: discovers owned repos
    recently active on GitHub/Forgejo but absent locally. Forgejo PAT from SSM,
    destination pinned to the canonical host (closes-the-loop on coilysiren/inbox#36).
  • ansible/roles/repos/ - discovers, then clones missing repos from GitHub
    (ansible.builtin.git, check-mode aware). Repos are data looped over the host;
    inventory stays machines.
  • mac.yml grows into freshen.yml; coily ansible-mac -> coily ansible-freshen
    (homebrew + agent-compose + repos). ansible-mac-seed unchanged.

Follow-on

Remaining up-to-date.py steps as roles: git remote-sync + github<->forgejo
mirror-drift, org-aware layout reconcile, catalog deptree check.

Origin

Was briefly mis-placed in public agentic-os; moved here where the ansible
subsystem already lives.

## What Port the hand-rolled fleet converger (`agentic-os-kai/scripts/up-to-date.py`) into this repo's existing ansible subsystem, rather than reinventing it. First slice: the **repos** role - reconcile local clones against the live repo layout. - `ansible/library/repo_registry.py` - read-only module: discovers owned repos recently active on GitHub/Forgejo but absent locally. Forgejo PAT from SSM, destination pinned to the canonical host (closes-the-loop on coilysiren/inbox#36). - `ansible/roles/repos/` - discovers, then clones missing repos from GitHub (ansible.builtin.git, check-mode aware). Repos are data looped over the host; inventory stays machines. - `mac.yml` grows into `freshen.yml`; `coily ansible-mac` -> `coily ansible-freshen` (homebrew + agent-compose + repos). `ansible-mac-seed` unchanged. ## Follow-on Remaining up-to-date.py steps as roles: git remote-sync + github<->forgejo mirror-drift, org-aware layout reconcile, catalog deptree check. ## Origin Was briefly mis-placed in public agentic-os; moved here where the ansible subsystem already lives.
Sign in to join this conversation.
No description provided.