Jelajahi Sumber

fix version marshaling

reid 2 tahun lalu
induk
melakukan
ff5a292b91
3 mengubah file dengan 8 tambahan dan 12 penghapusan
  1. 1 0
      config/config.go
  2. 7 1
      main.go
  3. 0 11
      structs/structs.go

+ 1 - 0
config/config.go

@@ -199,6 +199,7 @@ func CheckVersion() (structs.Version, bool) {
 			}
 		}
 		err = json.Unmarshal(body, &VersionInfo)
+		fmt.Println(string(body))
 		if err != nil {
 			errmsg := fmt.Sprintf("Error unmarshalling JSON: %v", err)
 			logger.Warn(errmsg)

+ 7 - 1
main.go

@@ -13,17 +13,20 @@ var (
 
 func main() {
 	for _, arg := range os.Args[1:] {
+		// trigger this with `./groundseg dev`
 		if arg == "dev" {
 			logger.Info("Starting GroundSeg in debug mode")
 		}
 	}
 	logger.Info("Starting GroundSeg")
 	logger.Info("Urbit is love <3")
+	// global SysConfig var is managed through config package
 	conf := config.Conf()
 	internetAvailable := config.NetCheck("1.1.1.1:53")
 	availMsg := fmt.Sprintf("Internet available: %t", internetAvailable)
 	logger.Info(availMsg)
-	// versionUpdateChannel := make(chan bool)
+	// async operation to retrieve version info
+	versionUpdateChannel := make(chan bool)
 	if conf.UpdateMode == "auto" {
 		go func() {
 			versionInfo, versionUpdate := config.CheckVersion()
@@ -34,9 +37,12 @@ func main() {
 			versionUpdateChannel <- versionUpdate
 		}()
 	}
+	// just making sure we can parse (debug)
 	var pierList string
 	for _, pier := range conf.Piers {
 		pierList = pierList + ", " + pier
 	}
 	logger.Info(pierList)
+	// block until returns (debug)
+	<-versionUpdateChannel
 }

+ 0 - 11
structs/structs.go

@@ -72,17 +72,6 @@ type Version struct {
 }
 
 type Channel struct {
-	Groundseg Component `json:"groundseg"`
-	Manual    Component `json:"manual"`
-	Minio     Component `json:"minio"`
-	Miniomc   Component `json:"miniomc"`
-	Netdata   Component `json:"netdata"`
-	Vere      Component `json:"vere"`
-	Webui     Component `json:"webui"`
-	Wireguard Component `json:"wireguard"`
-}
-
-type Component struct {
 	Groundseg VersionDetails `json:"groundseg"`
 	Manual    VersionDetails `json:"manual"`
 	Minio     VersionDetails `json:"minio"`