mirror of
https://github.com/akyaiy/GoSally-mvp.git
synced 2026-01-03 08:12:25 +00:00
Eliminating lint static checker's whining
This commit is contained in:
@@ -18,7 +18,7 @@ var rootCmd = &cobra.Command{
|
|||||||
Short: "Go Sally node",
|
Short: "Go Sally node",
|
||||||
Long: "Main node runner for Go Sally",
|
Long: "Main node runner for Go Sally",
|
||||||
Run: func(cmd *cobra.Command, args []string) {
|
Run: func(cmd *cobra.Command, args []string) {
|
||||||
cmd.Help()
|
_ = cmd.Help()
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -27,7 +27,7 @@ func Execute() {
|
|||||||
log.SetPrefix(logs.SetBrightBlack(fmt.Sprintf("(%s) ", corestate.StageNotReady)))
|
log.SetPrefix(logs.SetBrightBlack(fmt.Sprintf("(%s) ", corestate.StageNotReady)))
|
||||||
log.SetFlags(log.Ldate | log.Ltime)
|
log.SetFlags(log.Ldate | log.Ltime)
|
||||||
compositor.LoadCMDLine(rootCmd)
|
compositor.LoadCMDLine(rootCmd)
|
||||||
rootCmd.Execute()
|
_ = rootCmd.Execute()
|
||||||
// if err := rootCmd.Execute(); err != nil {
|
// if err := rootCmd.Execute(); err != nil {
|
||||||
// log.Fatalf("Unexpected error: %s", err.Error())
|
// log.Fatalf("Unexpected error: %s", err.Error())
|
||||||
// }
|
// }
|
||||||
|
|||||||
28
cmd/run.go
28
cmd/run.go
@@ -104,28 +104,28 @@ var runCmd = &cobra.Command{
|
|||||||
cs.RunDir = runDir
|
cs.RunDir = runDir
|
||||||
input, err := os.Open(os.Args[0])
|
input, err := os.Open(os.Args[0])
|
||||||
if err != nil {
|
if err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
if err := run_manager.Set(cs.NodeBinName); err != nil {
|
if err := run_manager.Set(cs.NodeBinName); err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
fmgr := run_manager.File(cs.NodeBinName)
|
fmgr := run_manager.File(cs.NodeBinName)
|
||||||
output, err := fmgr.Open()
|
output, err := fmgr.Open()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
|
|
||||||
if _, err := io.Copy(output, input); err != nil {
|
if _, err := io.Copy(output, input); err != nil {
|
||||||
fmgr.Close()
|
fmgr.Close()
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
if err := os.Chmod(filepath.Join(cs.RunDir, cs.NodeBinName), 0755); err != nil {
|
if err := os.Chmod(filepath.Join(cs.RunDir, cs.NodeBinName), 0755); err != nil {
|
||||||
fmgr.Close()
|
fmgr.Close()
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
input.Close()
|
input.Close()
|
||||||
@@ -137,7 +137,7 @@ var runCmd = &cobra.Command{
|
|||||||
env := utils.SetEviron(os.Environ(), fmt.Sprintf("GS_PARENT_PID=%d", os.Getpid()))
|
env := utils.SetEviron(os.Environ(), fmt.Sprintf("GS_PARENT_PID=%d", os.Getpid()))
|
||||||
|
|
||||||
if err := syscall.Exec(runArgs[0], runArgs, env); err != nil {
|
if err := syscall.Exec(runArgs[0], runArgs, env); err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -152,27 +152,27 @@ var runCmd = &cobra.Command{
|
|||||||
cs.RunDir = run_manager.Toggle()
|
cs.RunDir = run_manager.Toggle()
|
||||||
exist, err := utils.ExistsMatchingDirs(filepath.Join(os.TempDir(), fmt.Sprintf("/*-%s-%s", cs.UUID32, "gosally-runtime")), cs.RunDir)
|
exist, err := utils.ExistsMatchingDirs(filepath.Join(os.TempDir(), fmt.Sprintf("/*-%s-%s", cs.UUID32, "gosally-runtime")), cs.RunDir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
if exist {
|
if exist {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unable to continue node operation: A node with the same identifier was found in the runtime environment")
|
x.Log.Fatalf("Unable to continue node operation: A node with the same identifier was found in the runtime environment")
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := run_manager.Set("run.lock"); err != nil {
|
if err := run_manager.Set("run.lock"); err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
lockPath, err := run_manager.Get("run.lock")
|
lockPath, err := run_manager.Get("run.lock")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
lockFile := ini.Empty()
|
lockFile := ini.Empty()
|
||||||
secRun, err := lockFile.NewSection("runtime")
|
secRun, err := lockFile.NewSection("runtime")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
secRun.Key("pid").SetValue(fmt.Sprintf("%d/%d", os.Getpid(), x.Config.Env.ParentStagePID))
|
secRun.Key("pid").SetValue(fmt.Sprintf("%d/%d", os.Getpid(), x.Config.Env.ParentStagePID))
|
||||||
@@ -183,7 +183,7 @@ var runCmd = &cobra.Command{
|
|||||||
|
|
||||||
err = lockFile.SaveTo(lockPath)
|
err = lockFile.SaveTo(lockPath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
x.Log.Fatalf("Unexpected failure: %s", err.Error())
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -207,7 +207,7 @@ var runCmd = &cobra.Command{
|
|||||||
|
|
||||||
_, err = runLockFile.Watch(ctxMain, func() {
|
_, err = runLockFile.Watch(ctxMain, func() {
|
||||||
x.Log.Printf("run.lock was touched")
|
x.Log.Printf("run.lock was touched")
|
||||||
run_manager.Clean()
|
_ = run_manager.Clean()
|
||||||
cancelMain()
|
cancelMain()
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -274,7 +274,7 @@ var runCmd = &cobra.Command{
|
|||||||
x.SLog.Error("Failed to start HTTP server", slog.String("error", err.Error()))
|
x.SLog.Error("Failed to start HTTP server", slog.String("error", err.Error()))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
srv.Shutdown(ctxMain)
|
_ = srv.Shutdown(ctxMain)
|
||||||
}()
|
}()
|
||||||
|
|
||||||
if x.Config.Conf.Updates.UpdatesEnabled {
|
if x.Config.Conf.Updates.UpdatesEnabled {
|
||||||
|
|||||||
@@ -140,7 +140,9 @@ func (s *GeneralServer) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
|
|
||||||
log.Error("HTTP request error: unsupported API version",
|
log.Error("HTTP request error: unsupported API version",
|
||||||
slog.Int("status", http.StatusBadRequest))
|
slog.Int("status", http.StatusBadRequest))
|
||||||
utils.WriteJSONError(s.w, http.StatusBadRequest, "unsupported API version")
|
if err := utils.WriteJSONError(s.w, http.StatusBadRequest, "unsupported API version"); err != nil {
|
||||||
|
s.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// HandleList processes incoming HTTP requests for listing commands, routing them to the appropriate server based on the API version.
|
// HandleList processes incoming HTTP requests for listing commands, routing them to the appropriate server based on the API version.
|
||||||
@@ -182,5 +184,7 @@ func (s *GeneralServer) HandleList(w http.ResponseWriter, r *http.Request) {
|
|||||||
|
|
||||||
log.Error("HTTP request error: unsupported API version",
|
log.Error("HTTP request error: unsupported API version",
|
||||||
slog.Int("status", http.StatusBadRequest))
|
slog.Int("status", http.StatusBadRequest))
|
||||||
utils.WriteJSONError(s.w, http.StatusBadRequest, "unsupported API version")
|
if err := utils.WriteJSONError(s.w, http.StatusBadRequest, "unsupported API version"); err != nil {
|
||||||
|
s.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
h.log.Error("Failed to generate UUID",
|
h.log.Error("Failed to generate UUID",
|
||||||
slog.String("error", err.Error()))
|
slog.String("error", err.Error()))
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "failed to generate UUID: "+err.Error())
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "failed to generate UUID: "+err.Error()); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log := h.log.With(
|
log := h.log.With(
|
||||||
@@ -44,7 +47,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
slog.String("error", "invalid command"),
|
slog.String("error", "invalid command"),
|
||||||
slog.String("cmd", cmd),
|
slog.String("cmd", cmd),
|
||||||
slog.Int("status", http.StatusBadRequest))
|
slog.Int("status", http.StatusBadRequest))
|
||||||
utils.WriteJSONError(w, http.StatusBadRequest, "invalid command")
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusBadRequest, "invalid command"); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,7 +60,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
slog.String("error", "command not found"),
|
slog.String("error", "command not found"),
|
||||||
slog.String("cmd", cmd),
|
slog.String("cmd", cmd),
|
||||||
slog.Int("status", http.StatusNotFound))
|
slog.Int("status", http.StatusNotFound))
|
||||||
utils.WriteJSONError(w, http.StatusNotFound, "command not found")
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusNotFound, "command not found"); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,7 +73,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
slog.String("error", "command not found"),
|
slog.String("error", "command not found"),
|
||||||
slog.String("cmd", cmd),
|
slog.String("cmd", cmd),
|
||||||
slog.Int("status", http.StatusNotFound))
|
slog.Int("status", http.StatusNotFound))
|
||||||
utils.WriteJSONError(w, http.StatusNotFound, "command not found")
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusNotFound, "command not found"); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -93,7 +105,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
if err := L.DoFile(prepareLuaEnv); err != nil {
|
if err := L.DoFile(prepareLuaEnv); err != nil {
|
||||||
log.Error("Failed to prepare lua environment",
|
log.Error("Failed to prepare lua environment",
|
||||||
slog.String("error", err.Error()))
|
slog.String("error", err.Error()))
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "lua error: "+err.Error())
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "lua error: "+err.Error()); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -103,7 +118,9 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
if err := L.DoFile(scriptPath); err != nil {
|
if err := L.DoFile(scriptPath); err != nil {
|
||||||
log.Error("Failed to execute lua script",
|
log.Error("Failed to execute lua script",
|
||||||
slog.String("error", err.Error()))
|
slog.String("error", err.Error()))
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "lua error: "+err.Error())
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "lua error: "+err.Error()); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -111,7 +128,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
tbl, ok := lv.(*lua.LTable)
|
tbl, ok := lv.(*lua.LTable)
|
||||||
if !ok {
|
if !ok {
|
||||||
log.Error("Lua global 'Out' is not a table")
|
log.Error("Lua global 'Out' is not a table")
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "'Out' is not a table")
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "'Out' is not a table"); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -119,7 +139,10 @@ func (h *HandlerV1) Handle(w http.ResponseWriter, r *http.Request) {
|
|||||||
resultTbl, ok := resultVal.(*lua.LTable)
|
resultTbl, ok := resultVal.(*lua.LTable)
|
||||||
if !ok {
|
if !ok {
|
||||||
log.Error("Lua global 'Result' is not a table")
|
log.Error("Lua global 'Result' is not a table")
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "'Result' is not a table")
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "'Result' is not a table"); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,10 @@ func (h *HandlerV1) HandleList(w http.ResponseWriter, r *http.Request) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
h.log.Error("Failed to generate UUID",
|
h.log.Error("Failed to generate UUID",
|
||||||
slog.String("error", err.Error()))
|
slog.String("error", err.Error()))
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "failed to generate UUID: "+err.Error())
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "failed to generate UUID: "+err.Error()); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log := h.log.With(
|
log := h.log.With(
|
||||||
@@ -48,7 +51,10 @@ func (h *HandlerV1) HandleList(w http.ResponseWriter, r *http.Request) {
|
|||||||
if files, err = os.ReadDir(h.cfg.ComDir); err != nil {
|
if files, err = os.ReadDir(h.cfg.ComDir); err != nil {
|
||||||
log.Error("Failed to read commands directory",
|
log.Error("Failed to read commands directory",
|
||||||
slog.String("error", err.Error()))
|
slog.String("error", err.Error()))
|
||||||
utils.WriteJSONError(w, http.StatusInternalServerError, "failed to read commands directory: "+err.Error())
|
|
||||||
|
if err := utils.WriteJSONError(w, http.StatusInternalServerError, "failed to read commands directory: "+err.Error()); err != nil {
|
||||||
|
h.log.Error("Failed to write JSON", slog.String("err", err.Error()))
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -313,7 +313,9 @@ func (u *Updater) InstallAndRestart() error {
|
|||||||
args[0] = targetPath
|
args[0] = targetPath
|
||||||
env := utils.SetEviron(os.Environ(), "GS_PARENT_PID=-1")
|
env := utils.SetEviron(os.Environ(), "GS_PARENT_PID=-1")
|
||||||
|
|
||||||
run_manager.Clean()
|
if err := run_manager.Clean(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
return syscall.Exec(targetPath, args, env)
|
return syscall.Exec(targetPath, args, env)
|
||||||
//u.cancel()
|
//u.cancel()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user