v0.1.27 release: Complete implementation
Features: - Error logging system with ETHOS #1 compliance - Command factory pattern with UUID generation - Hardware binding with machine fingerprint validation - Ed25519 cryptographic signing for updates - Deduplication and idempotency for commands - Circuit breakers and retry logic - Frontend error logging integration Bug Fixes: - Version display using compile-time injection - Migration 017 CONCURRENTLY issue resolved - Docker build context fixes - Rate limiting implementation verified Documentation: - README updated to reflect actual implementation - v0.1.27 inventory analysis added
This commit is contained in:
@@ -19,6 +19,7 @@ import (
|
||||
"github.com/Fimeg/RedFlag/aggregator-server/internal/logging"
|
||||
"github.com/Fimeg/RedFlag/aggregator-server/internal/scheduler"
|
||||
"github.com/Fimeg/RedFlag/aggregator-server/internal/services"
|
||||
"github.com/Fimeg/RedFlag/aggregator-server/internal/version"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
@@ -128,15 +129,15 @@ func main() {
|
||||
// Parse command line flags
|
||||
var setup bool
|
||||
var migrate bool
|
||||
var version bool
|
||||
var showVersion bool
|
||||
flag.BoolVar(&setup, "setup", false, "Run setup wizard")
|
||||
flag.BoolVar(&migrate, "migrate", false, "Run database migrations only")
|
||||
flag.BoolVar(&version, "version", false, "Show version information")
|
||||
flag.BoolVar(&showVersion, "version", false, "Show version information")
|
||||
flag.Parse()
|
||||
|
||||
// Handle special commands
|
||||
if version {
|
||||
fmt.Printf("RedFlag Server v0.1.0-alpha\n")
|
||||
if showVersion {
|
||||
fmt.Printf("RedFlag Server v%s\n", version.AgentVersion)
|
||||
fmt.Printf("Self-hosted update management platform\n")
|
||||
return
|
||||
}
|
||||
@@ -491,6 +492,11 @@ func main() {
|
||||
dashboard.POST("/agents/:id/subsystems/:subsystem/auto-run", subsystemHandler.SetAutoRun)
|
||||
dashboard.POST("/agents/:id/subsystems/:subsystem/interval", subsystemHandler.SetInterval)
|
||||
|
||||
// Client error logging (authenticated)
|
||||
clientErrorHandler := handlers.NewClientErrorHandler(db.DB)
|
||||
dashboard.POST("/logs/client-error", clientErrorHandler.LogError)
|
||||
dashboard.GET("/logs/client-errors", clientErrorHandler.GetErrors)
|
||||
|
||||
dashboard.GET("/updates", updateHandler.ListUpdates)
|
||||
dashboard.GET("/updates/:id", updateHandler.GetUpdate)
|
||||
dashboard.GET("/updates/:id/logs", updateHandler.GetUpdateLogs)
|
||||
|
||||
Reference in New Issue
Block a user