Commit graph

6 commits

Author SHA1 Message Date
09632c16e7 skill(freebsd): add .pkgnew merge, service health check, pkg autoremove
Three additions from pre-merge review:

1. .pkgnew config merge — pkgbase drops updated configs as /etc/*.pkgnew.
   Find and merge them before rebooting so the 15.1 system boots with its
   own configs, not 15.0-era ones.

2. Service health check — post-reboot verification now includes explicit
   checks: colibri_daemon, postgresql, tailscaled, bastille jails, pfctl.
   Version numbers matching is not enough — services must be running.

3. pkg autoremove — clean up orphaned packages the upgrade leaves behind.
   Dry-run first, then remove.
2026-06-25 13:10:41 +02:00
245e25200f skill(freebsd): clarify fleet vs OSA upgrade paths at top of runbook
Fleet nodes (USB/disk, built from release memstick) use freebsd-update —
one command, zero flags. OSA uses pkgbase, carrying the repo-editing +
IGNORE_OSVERSION complexity. Make the distinction visible before anyone
starts reading steps meant for the other path.
2026-06-25 11:57:24 +02:00
bcb769f2e0 skill(freebsd): add re-register-with-mother after upgrade (step 8)
The node OS version changed after the upgrade, but the mother hive_nodes
row still shows the old freebsd_version. Re-running the probe + node_register
makes the upgrade visible to the scheduler.

Renumbered: 8→9 (vulnerability audit).
2026-06-25 11:55:28 +02:00
524a3c3153 skill(freebsd): tighten cross-release override — one-time, IGNORE_OSVERSION, date YYYY
Four corrections from Codex review:

1. One-time caveat: OSVERSION/IGNORE_OSVERSION is for the boundary only.
   Remove it after reboot — persisting would spoof the wrong version on
   the next upgrade and silently pull mismatched packages.

2. IGNORE_OSVERSION=yes as the canonical idiom (does not require knowing
   the exact __FreeBSD_version number).

3. ABI="FreeBSD:15:amd64" marked as redundant (it is already the default
   on 15.x; OSVERSION is the actual lever).

4. Date format: DD.mon.YY → DD.mon.YYYY (matches eu-date-format convention).
   Live BE renamed to 15.1-upgrade-25.jun.2026.
2026-06-25 11:29:58 +02:00
aebc225ddc skill(freebsd): add boot environment rollback + cross-release override
Two improvements from the live OSA upgrade run:

1. Boot environment rollback: step 2 (before any base changes) now creates
   a BE with naming convention MAJOR.MINOR-upgrade-DD.mon.YY. pkgbase does
   NOT auto-snapshot ZFS — this must be done manually. If the upgrade
   misbehaves after reboot, bectl activate + reboot = instant rollback.

2. Cross-release override: pkgbase refuses to fetch 15.1 packages while
   running 15.0 userland. Document the env OSVERSION=1501000 override
   needed to cross the boundary.

Renumbered subsequent steps 2→3, 3→4, ..., 7→8.
2026-06-25 11:23:36 +02:00
00cc28e39e skill(freebsd): freebsd-os-upgrade — minor point-release runbook (#19)
Co-authored-by: Sam & Claude <hello@clawdie.si>
Co-committed-by: Sam & Claude <hello@clawdie.si>
2026-06-25 11:05:27 +02:00