Files
OpenShell/deploy
Drew Newberry aa886bedb9 feat(gateway): add k3s health checking, kubeconfig extraction, and boot retry
After fork_start(), the parent now:
- Polls https://localhost:<kube_port>/readyz with 2s intervals (120s timeout)
- Checks child PID is alive between polls (fast-fail on VM crash)
- Reads kubeconfig from rootfs via virtio-fs (host-visible)
- Rewrites server URL and cluster name, stores in standard location
- Prints kubectl usage instructions when ready

Always forwards kube API port (ephemeral if --kube-port not specified)
to enable health checking. Adds --name flag for kubeconfig context naming.

Boot reliability: vm-init.sh now retries k3s up to 3 times with cleanup
between attempts, handling the transient kine SQLite race condition on
tmpfs that occasionally crashes k3s on first boot.

Exports rewrite_kubeconfig and store_kubeconfig from navigator-bootstrap
for use by the gateway cluster command.
2026-03-03 10:37:22 -08:00
..