Handbook
Learn 101 — Migrate to apt
Outcome: move an existing git Fleet install to the apt channel with cooperative upgrades.
Updated
Prerequisite: Operator apt install or an existing git install you want to replace.
Check current channel
curl -fsS -H "Authorization: Bearer ${FLEET_BEARER_TOKEN}" \
http://127.0.0.1:18766/v1/admin/install-channel | jq .
Or:
land-fleet migrate-to-apt --user # laptop
land-fleet migrate-to-apt --system # Granite / system unit
Laptop (git_user → apt_user)
- Save env: bearer token, remote peers,
forge-fleet.envconffile if present. - Install user package (one-time sudo):
curl -fsSL "${FORGE_APT_BASE_URL:-https://packages.forgesdlc.com/fleet/ubuntu}/install.sh" \
-o /tmp/forge-fleet-install.sh
bash /tmp/forge-fleet-install.sh --user --with-docker # prompts for sudo once (apt source + packages)
land-fleet setup-user
land-fleet migrate-to-apt --user
Until this one-time root step is done, releases still reach the host automatically: update-fleet.sh --remote-upgrade --publish-apt-cdn falls back to the cooperative git upgrade through the API (see Migrate installations to apt).
- Confirm timer:
land-fleet timer-status→forge-fleet-apt-upgrade.timeractive. - Upgrade from admin Update Fleet or:
curl -fsS -X POST -H "Authorization: Bearer ${FLEET_BEARER_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"mode":"upgrade","max_wait_sec":45}' \
http://127.0.0.1:18766/v1/admin/upgrade
land-fleet upgrade --wait
System host (git_system → apt_system)
Follow the runbook in Migrate installations to apt (Granite section). After migration, use POST /v1/admin/upgrade instead of git-self-update for routine bumps.