From d8ad7df21974dfc9b0cd086ca354d3e98f755d0f Mon Sep 17 00:00:00 2001 From: Alex Gartner Date: Wed, 8 May 2024 16:25:12 -0700 Subject: [PATCH] lint fixes --- cmd/zetaclientd-supervisor/lib.go | 14 ++++++++------ cmd/zetaclientd-supervisor/main.go | 3 ++- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/cmd/zetaclientd-supervisor/lib.go b/cmd/zetaclientd-supervisor/lib.go index 390a10e69e..47ef4106ed 100644 --- a/cmd/zetaclientd-supervisor/lib.go +++ b/cmd/zetaclientd-supervisor/lib.go @@ -22,6 +22,8 @@ import ( "google.golang.org/grpc" ) +// serializedWriter wraps an io.Writer and ensures that writes to it from mulitple goroutines +// are serialized type serializedWriter struct { upstream io.Writer lock sync.Mutex @@ -56,10 +58,10 @@ type zetaclientdSupervisor struct { upgradePlanName string } -func newZetaclientdSupervisor(zetaCoreUrl string, logger zerolog.Logger) (*zetaclientdSupervisor, error) { +func newZetaclientdSupervisor(zetaCoreURL string, logger zerolog.Logger) (*zetaclientdSupervisor, error) { logger = logger.With().Str("module", "zetaclientdSupervisor").Logger() conn, err := grpc.Dial( - fmt.Sprintf("%s:9090", zetaCoreUrl), + fmt.Sprintf("%s:9090", zetaCoreURL), grpc.WithInsecure(), ) if err != nil { @@ -203,21 +205,21 @@ func (s *zetaclientdSupervisor) downloadZetaclientd(ctx context.Context, plan *u s.logger.Info().Msg("downloading zetaclientd") binKey := fmt.Sprintf("zetaclientd-%s/%s", runtime.GOOS, runtime.GOARCH) - binUrl, ok := config.Binaries[binKey] + binURL, ok := config.Binaries[binKey] if !ok { return fmt.Errorf("no binary found for: %s", binKey) } upgradeDir := s.dirForVersion(plan.Name) - err = os.MkdirAll(upgradeDir, 0o770) + err = os.MkdirAll(upgradeDir, 0o750) if err != nil { return fmt.Errorf("mkdir %s: %w", upgradeDir, err) } upgradePath := path.Join(upgradeDir, "zetaclientd") // TODO: retry? // GetFile should validate checksum so long as it was provided in the url - err = getter.GetFile(upgradePath, binUrl, getter.WithContext(ctx), getter.WithUmask(0o750)) + err = getter.GetFile(upgradePath, binURL, getter.WithContext(ctx), getter.WithUmask(0o750)) if err != nil { - return fmt.Errorf("get file %s: %w", binUrl, err) + return fmt.Errorf("get file %s: %w", binURL, err) } // ensure binary is executable diff --git a/cmd/zetaclientd-supervisor/main.go b/cmd/zetaclientd-supervisor/main.go index b395cd8142..874e51b4f9 100644 --- a/cmd/zetaclientd-supervisor/main.go +++ b/cmd/zetaclientd-supervisor/main.go @@ -50,7 +50,8 @@ func main() { shouldRestart := true for shouldRestart { ctx, cancel := context.WithCancel(ctx) - cmd := exec.CommandContext(ctx, "zetaclientd", os.Args[1:]...) + // pass args from supervisor directly to zetaclientd + cmd := exec.CommandContext(ctx, "zetaclientd", os.Args[1:]...) // #nosec G204 // by default, CommandContext sends SIGKILL. we want more graceful shutdown. cmd.Cancel = func() error { return cmd.Process.Signal(syscall.SIGINT)