瀏覽代碼

simplify load function calls

nallux-dozryl 2 年之前
父節點
當前提交
421e7d402d
共有 1 個文件被更改,包括 13 次插入35 次删除
  1. 13 35
      main.go

+ 13 - 35
main.go

@@ -17,6 +17,14 @@ var (
 	devMode = false
 )
 
+func loadService(loadFunc func() error, errMsg string) {
+	go func() {
+		if err := loadFunc(); err != nil {
+			logger.Error(fmt.Sprintf("%s %v", errMsg, err))
+		}
+	}()
+}
+
 func main() {
 	for _, arg := range os.Args[1:] {
 		// trigger this with `./groundseg dev`
@@ -53,45 +61,15 @@ func main() {
 	<-versionUpdateChannel
 
 	// Load Netdata
-	go func() {
-		err := docker.LoadNetdata()
-		if err != nil {
-			errmsg := fmt.Sprintf("Unable to load Netdata! %v", err)
-			logger.Error(errmsg)
-		}
-	}()
+	loadService(docker.LoadNetdata, "Unable to load Netdata!")
 	// Load Wireguard
-	go func() {
-		err := docker.LoadWireguard()
-		if err != nil {
-			errmsg := fmt.Sprintf("Unable to load Wireguard! %v", err)
-			logger.Error(errmsg)
-		}
-	}()
+	loadService(docker.LoadWireguard, "Unable to load Wireguard!")
 	// Load Urbits
-	go func() {
-		err := docker.LoadUrbits()
-		if err != nil {
-			errmsg := fmt.Sprintf("Unable to load Urbit ships! %v", err)
-			logger.Error(errmsg)
-		}
-	}()
+	loadService(docker.LoadUrbits, "Unable to load Urbit ships!")
 	// Load MC
-	go func() {
-		err := docker.LoadMC()
-		if err != nil {
-			errmsg := fmt.Sprintf("Unable to load MinIO Client! %v", err)
-			logger.Error(errmsg)
-		}
-	}()
+	loadService(docker.LoadMC, "Unable to load MinIO Client!")
 	// Load MinIOs
-	go func() {
-		err := docker.LoadMinIOs()
-		if err != nil {
-			errmsg := fmt.Sprintf("Unable to load MinIO containers! %v", err)
-			logger.Error(errmsg)
-		}
-	}()
+	loadService(docker.LoadMinIOs, "Unable to load MinIO containers!")
 
 	// Websocket
 	r := mux.NewRouter()