updates
This commit is contained in:
@@ -101,7 +101,8 @@ func main() {
|
||||
}()
|
||||
|
||||
// --- Start background tasks ---
|
||||
// Periodic stack status refresh
|
||||
|
||||
// Periodic container status refresh (lightweight — just runs docker ps)
|
||||
go func() {
|
||||
ticker := time.NewTicker(30 * time.Second)
|
||||
defer ticker.Stop()
|
||||
@@ -117,6 +118,26 @@ func main() {
|
||||
}
|
||||
}()
|
||||
|
||||
// Periodic stack scan (discovers new/removed stacks from disk)
|
||||
// Runs less frequently since it reads the filesystem.
|
||||
// This allows adding new stacks without restarting the controller.
|
||||
go func() {
|
||||
ticker := time.NewTicker(2 * time.Minute)
|
||||
defer ticker.Stop()
|
||||
for {
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
return
|
||||
case <-ticker.C:
|
||||
if err := stackMgr.ScanStacks(); err != nil {
|
||||
logger.Printf("[WARN] Periodic stack scan failed: %v", err)
|
||||
} else {
|
||||
logger.Printf("[DEBUG] Periodic stack scan completed")
|
||||
}
|
||||
}
|
||||
}
|
||||
}()
|
||||
|
||||
logger.Printf("[INFO] Web UI listening on %s", cfg.Web.Listen)
|
||||
if err := server.ListenAndServe(); err != http.ErrServerClosed {
|
||||
logger.Fatalf("[FATAL] HTTP server error: %v", err)
|
||||
@@ -134,4 +155,4 @@ func setupLogger(cfg *config.Config) *log.Logger {
|
||||
}
|
||||
|
||||
return logger
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user