core: replace logbuffer with logtree

Test Plan: Component logs are currently untested?

X-Origin-Diff: phab/D643
GitOrigin-RevId: 44ace0a1937aee9ba6a49db6e862907ec24d6ea3
diff --git a/core/internal/kubernetes/controller-manager.go b/core/internal/kubernetes/controller-manager.go
index 126076e..690a553 100644
--- a/core/internal/kubernetes/controller-manager.go
+++ b/core/internal/kubernetes/controller-manager.go
@@ -20,7 +20,6 @@
 	"context"
 	"encoding/pem"
 	"fmt"
-	"io"
 	"net"
 	"os/exec"
 
@@ -61,7 +60,7 @@
 	return &config, nil
 }
 
-func runControllerManager(config controllerManagerConfig, output io.Writer) supervisor.Runnable {
+func runControllerManager(config controllerManagerConfig) supervisor.Runnable {
 	return func(ctx context.Context) error {
 		args, err := fileargs.New()
 		if err != nil {
@@ -89,11 +88,6 @@
 		if args.Error() != nil {
 			return fmt.Errorf("failed to use fileargs: %w", err)
 		}
-		cmd.Stdout = output
-		cmd.Stderr = output
-		supervisor.Signal(ctx, supervisor.SignalHealthy)
-		err = cmd.Run()
-		fmt.Fprintf(output, "controller-manager stopped: %v\n", err)
-		return err
+		return supervisor.RunCommand(ctx, cmd)
 	}
 }