Skip to content
Backpack
Esc
navigateopen⌘Jpreview
On this page

Playbook: org migration

Moving all repos to Backpack-Ops without breaking deploys.

The target: every repo under github.com/Backpack-Ops, deploys unbroken, porter private again, secrets in Infisical, commits authored as david@backpackops.com (Backpack identity is separate from scholarfund).

Preconditions (owner, one time)

  1. Install the Vercel GitHub App on the Backpack-Ops org: github.com/apps/vercel, Configure, select Backpack-Ops, grant all repositories. Without this, pushes to transferred repos stop triggering deploys (proven by test on backpack-docs).
  2. If iese moves later: install the Railway GitHub App on the org the same way.
  3. Provide an Infisical machine identity for automation.

Transfer order (agent-executable). Executed 2026-07-18: docs, porter (now private), console, and all nine site repos are in Backpack-Ops; deploys and CMS publishing verified end to end. iese remains, pending the Railway app on the org.

  1. backpack-docs (done 2026-07-18, deploys manually until the app is installed).
  2. site-porter, then flip it private (org Actions billing is clean) and run one test port to confirm.
  3. site-editor (the console). Immediately verify: push an empty commit, confirm auto-deploy, confirm registry reads work.
  4. Client site repos, one at a time, verifying one CMS publish against the first before doing the rest.
  5. iese last (Railway connection).

Transfers use POST /repos/mrcoven94/<repo>/transfer with new_owner Backpack-Ops. GitHub redirects old URLs, and repo IDs are stable, so connected apps follow once installed on the org.

Reference updates after transfer

  • Console: CONSOLE_REPO constant and any hardcoded mrcoven94/ strings.
  • Porter: port.yml repo-create target and registry.json update path.
  • Local git remotes on this machine.
  • Docs and memory references.

Identity

All commits to Backpack repos use david@backpackops.com from now on. Nothing affiliated with scholarfundwa.org in the Backpack estate.

Was this page helpful?