Harden sidecar auto-start fallback
Some checks are pending
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run

This commit is contained in:
Snider 2026-04-17 20:33:56 +01:00
parent f5821a64e5
commit d47d143201
2 changed files with 13 additions and 6 deletions

View file

@ -1 +0,0 @@
- @bug pkg/display/sidecar.go:13 — sidecar startup is still gated by `CORE_DENO_ENABLE`, which makes display package tests brittle when the configured binary is missing.

View file

@ -2,6 +2,7 @@ package display
import (
"context"
"os/exec"
"reflect"
"strings"
@ -11,12 +12,19 @@ import (
func (s *Service) registerSidecarActions() {
if strings.TrimSpace(core.Env("CORE_DENO_ENABLE")) != "" && s.sidecar == nil {
s.sidecar = s.ensureSidecar()
if _, err := s.sidecar.Start(context.Background()); err != nil {
if s != nil && s.ServiceRuntime != nil && s.Core() != nil {
s.Core().LogError(err, "display.registerSidecarActions", "failed to start enabled sidecar")
manager := s.ensureSidecar()
if binary := strings.TrimSpace(manager.Status().Binary); binary != "" {
if _, err := exec.LookPath(binary); err != nil {
if s != nil && s.ServiceRuntime != nil && s.Core() != nil {
s.Core().LogWarn(err, "display.registerSidecarActions", "skipping sidecar auto-start; binary unavailable")
}
s.sidecar = nil
} else if _, err := manager.Start(context.Background()); err != nil {
if s != nil && s.ServiceRuntime != nil && s.Core() != nil {
s.Core().LogError(err, "display.registerSidecarActions", "failed to start enabled sidecar")
}
s.sidecar = nil
}
s.sidecar = nil
}
}