* Add standalone Linux bootstrap foundation * Record bootstrap foundation progress * Add single-code Node enrollment * Validate bootstrap release payloads * Add managed WireGuard mesh bootstrap * Exercise repeated systemd installation in CI * Expose systemd smoke failure diagnostics * Fix bootstrap os-release variable collision * Create policy helper directory during install * Capture systemd smoke healthcheck errors * Report Control listener diagnostics in CI * Capture stalled Control process diagnostics * Set service working directories * Run protected CA healthcheck as root * Add local Mesh emergency recovery * Add multi-architecture Linux system matrix * Add provisioning job control plane * Stabilize Debian systemd smoke files * Add node-scoped provisioning job channel * Add provisioning progress state machine * Reconcile expired provisioning jobs * Add provisioning rollback workflow * Add redacted provisioning event history * Add restricted provisioning preflight helper * Persist typed provisioning preflight facts * Add preflight desired state drift detection * Define strict base install schema catalog * Add safe base install plan generation * Add pre-confirmation base install plans * Test base install plan API flow * Authorize confirmed provisioning execution --------- Co-authored-by: Ochenstarik <ochenstarik@inbox.ru>
39 lines
1.4 KiB
Bash
Executable file
39 lines
1.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
set -Eeuo pipefail
|
|
IFS=$'\n\t'
|
|
|
|
archive="${1:?usage: run-native-systemd-smoke.sh ARCHIVE BOOTSTRAP}"
|
|
bootstrap="${2:?usage: run-native-systemd-smoke.sh ARCHIVE BOOTSTRAP}"
|
|
port="${SMM_SMOKE_PORT:-17443}"
|
|
|
|
cleanup() {
|
|
sudo "$bootstrap" uninstall-control --confirm-destroy-control >/dev/null 2>&1 || true
|
|
}
|
|
trap cleanup EXIT
|
|
|
|
sudo "$bootstrap" preflight
|
|
sudo "$bootstrap" verify-release "$archive"
|
|
sudo "$bootstrap" install-control "$archive" 127.0.0.1 "$port"
|
|
sudo test -x /usr/local/sbin/ochenstarik-smm-emergency
|
|
sudo /usr/local/sbin/ochenstarik-smm-emergency status
|
|
|
|
for _ in {1..30}; do
|
|
if sudo curl --fail --silent \
|
|
--cacert /etc/ochenstarik-server-monitor-manager/control-ca.crt \
|
|
"https://127.0.0.1:$port/healthz" >/dev/null; then
|
|
break
|
|
fi
|
|
sleep 1
|
|
done
|
|
sudo curl --fail --silent --show-error \
|
|
--cacert /etc/ochenstarik-server-monitor-manager/control-ca.crt \
|
|
"https://127.0.0.1:$port/healthz"
|
|
|
|
sudo "$bootstrap" install-control "$archive" 127.0.0.1 "$port"
|
|
sudo systemctl restart ochenstarik-smm-control.service
|
|
sudo systemctl is-active --quiet ochenstarik-smm-control.service
|
|
sudo curl --fail --silent --show-error --retry 15 --retry-all-errors --retry-delay 1 \
|
|
--cacert /etc/ochenstarik-server-monitor-manager/control-ca.crt \
|
|
"https://127.0.0.1:$port/healthz"
|
|
|
|
printf '%s\n' "NATIVE_SYSTEMD_SMOKE=PASS"
|