- dev-vm.sh: rewrite for macOS (bsdtar ISO extraction, Homebrew mkfs.ext4 detection, direct kernel boot, TCG acceleration, port 8080 forwarding) - inject-kubesolo.sh: add CA certificates bundle from builder so containerd can verify TLS when pulling from registries (Docker Hub, etc.) - 50-network.sh: add DNS fallback (10.0.2.3 + 8.8.8.8) when DHCP client doesn't populate /etc/resolv.conf - 90-kubesolo.sh: serve kubeconfig via HTTP on port 8080 for reliable retrieval from host, add 127.0.0.1 and 10.0.2.15 to API server SANs - portainer.go: add headless Service to Edge Agent manifest (required for agent peer discovery DNS lookup) - 10-parse-cmdline.sh + init.sh: add kubesolo.edge_id/edge_key boot params - 20-persistent-mount.sh: auto-format unformatted data disks on first boot - hack/fix-portainer-service.sh: helper to patch running cluster Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
1.3 KiB
Bash
Executable File
30 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
# 10-parse-cmdline.sh — Parse boot parameters from /proc/cmdline
|
|
|
|
for arg in $(cat /proc/cmdline); do
|
|
case "$arg" in
|
|
kubesolo.data=*) KUBESOLO_DATA_DEV="${arg#kubesolo.data=}" ;;
|
|
kubesolo.debug) KUBESOLO_DEBUG=1; set -x ;;
|
|
kubesolo.shell) KUBESOLO_SHELL=1 ;;
|
|
kubesolo.nopersist) KUBESOLO_NOPERSIST=1 ;;
|
|
kubesolo.cloudinit=*) KUBESOLO_CLOUDINIT="${arg#kubesolo.cloudinit=}" ;;
|
|
kubesolo.flags=*) KUBESOLO_EXTRA_FLAGS="${arg#kubesolo.flags=}" ;;
|
|
kubesolo.edge_id=*) KUBESOLO_PORTAINER_EDGE_ID="${arg#kubesolo.edge_id=}" ;;
|
|
kubesolo.edge_key=*) KUBESOLO_PORTAINER_EDGE_KEY="${arg#kubesolo.edge_key=}" ;;
|
|
esac
|
|
done
|
|
|
|
if [ -z "$KUBESOLO_DATA_DEV" ] && [ "$KUBESOLO_NOPERSIST" != "1" ]; then
|
|
log_warn "No kubesolo.data= specified and kubesolo.nopersist not set"
|
|
log_warn "Attempting auto-detection of data partition (label: KSOLODATA)"
|
|
KUBESOLO_DATA_DEV=$(blkid -L KSOLODATA 2>/dev/null || true)
|
|
if [ -z "$KUBESOLO_DATA_DEV" ]; then
|
|
log_warn "No data partition found. Running in RAM-only mode."
|
|
KUBESOLO_NOPERSIST=1
|
|
else
|
|
log "Auto-detected data partition: $KUBESOLO_DATA_DEV"
|
|
fi
|
|
fi
|
|
|
|
log "Config: data=$KUBESOLO_DATA_DEV debug=$KUBESOLO_DEBUG nopersist=$KUBESOLO_NOPERSIST"
|