feat: add distribution and fleet management — CI/CD, OCI, metrics, ARM64 (Phase 5)
- Gitea Actions CI pipeline: Go tests, build, shellcheck on push/PR - Gitea Actions release pipeline: full build + artifact upload on version tags - OCI container image builder for registry-based OS distribution - Zero-dependency Prometheus metrics endpoint (kubesolo_os_info, boot, memory, update status) with 10 tests - USB provisioning tool for air-gapped deployments with cloud-init injection - ARM64 cross-compilation support (TARGET_ARCH env var + build-cross.sh) - Updated build scripts to accept TARGET_ARCH for both amd64 and arm64 - New Makefile targets: oci-image, build-cross Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -10,6 +10,7 @@
|
||||
// kubesolo-update status Show current A/B slot and boot status
|
||||
// kubesolo-update sign Sign update artifacts with Ed25519 key
|
||||
// kubesolo-update genkey Generate new Ed25519 signing key pair
|
||||
// kubesolo-update metrics Start Prometheus-compatible metrics server
|
||||
package main
|
||||
|
||||
import (
|
||||
@@ -48,6 +49,8 @@ func main() {
|
||||
err = cmd.Sign(os.Args[2:])
|
||||
case "genkey":
|
||||
err = cmd.GenKey(os.Args[2:])
|
||||
case "metrics":
|
||||
err = cmd.Metrics(os.Args[2:])
|
||||
default:
|
||||
fmt.Fprintf(os.Stderr, "unknown command: %s\n\n", os.Args[1])
|
||||
usage()
|
||||
@@ -72,6 +75,7 @@ Commands:
|
||||
status Show current A/B slot and boot status
|
||||
sign Sign artifacts with Ed25519 private key (build system)
|
||||
genkey Generate new Ed25519 signing key pair
|
||||
metrics Start Prometheus-compatible metrics HTTP server
|
||||
|
||||
Options:
|
||||
--server URL Update server URL (default: from /etc/kubesolo/update.conf)
|
||||
|
||||
Reference in New Issue
Block a user