fix(cmd): use pointer instead a copied object of the configFile environment
This commit is contained in:
		
							
								
								
									
										19
									
								
								cmd/cmd.go
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								cmd/cmd.go
									
									
									
									
									
								
							| @@ -7,10 +7,9 @@ import ( | ||||
|  | ||||
| 	"github.com/go-flucky/flucky/cmd/compression" | ||||
| 	"github.com/go-flucky/flucky/cmd/convert" | ||||
| 	"github.com/go-flucky/flucky/cmd/pressure" | ||||
|  | ||||
| 	"github.com/go-flucky/flucky/cmd/daemon" | ||||
| 	"github.com/go-flucky/flucky/cmd/humidity" | ||||
| 	"github.com/go-flucky/flucky/cmd/pressure" | ||||
| 	"github.com/go-flucky/flucky/cmd/rgbled" | ||||
| 	"github.com/go-flucky/flucky/cmd/sensor" | ||||
| 	"github.com/go-flucky/flucky/cmd/temperature" | ||||
| @@ -60,13 +59,13 @@ func Execute(version string) { | ||||
|  | ||||
| 	rootCmd.PersistentFlags().StringVar(&configFile, "config", "/etc/flucky/config.json", "Config file") | ||||
|  | ||||
| 	compression.InitCmd(rootCmd, configFile) | ||||
| 	convert.InitCmd(rootCmd, configFile) | ||||
| 	daemon.InitCmd(rootCmd, configFile) | ||||
| 	humidity.InitCmd(rootCmd, configFile) | ||||
| 	pressure.InitCmd(rootCmd, configFile) | ||||
| 	rgbled.InitCmd(rootCmd, configFile) | ||||
| 	sensor.InitCmd(rootCmd, configFile) | ||||
| 	temperature.InitCmd(rootCmd, configFile) | ||||
| 	compression.InitCmd(rootCmd, &configFile) | ||||
| 	convert.InitCmd(rootCmd, &configFile) | ||||
| 	daemon.InitCmd(rootCmd, &configFile) | ||||
| 	humidity.InitCmd(rootCmd, &configFile) | ||||
| 	pressure.InitCmd(rootCmd, &configFile) | ||||
| 	rgbled.InitCmd(rootCmd, &configFile) | ||||
| 	sensor.InitCmd(rootCmd, &configFile) | ||||
| 	temperature.InitCmd(rootCmd, &configFile) | ||||
| 	rootCmd.Execute() | ||||
| } | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import ( | ||||
| ) | ||||
|  | ||||
| var compression bool | ||||
| var configFile string | ||||
| var configFile *string | ||||
|  | ||||
| var compressionCmd = &cobra.Command{ | ||||
| 	Use:     "compression", | ||||
| @@ -33,7 +33,7 @@ var compressionCmd = &cobra.Command{ | ||||
| 	}, | ||||
| } | ||||
|  | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
| 	cmd.AddCommand(compressionCmd) | ||||
|  | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import ( | ||||
| ) | ||||
|  | ||||
| var compression bool | ||||
| var configFile string | ||||
| var configFile *string | ||||
|  | ||||
| var convertCmd = &cobra.Command{ | ||||
| 	Use:     "convert", | ||||
| @@ -37,7 +37,7 @@ var convertCmd = &cobra.Command{ | ||||
| } | ||||
|  | ||||
| // Execute a | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
| 	cmd.AddCommand(convertCmd) | ||||
| 	convertCmd.Flags().BoolVar(&compression, "compression", true, "Compress measured values") | ||||
|   | ||||
| @@ -12,7 +12,7 @@ import ( | ||||
|  | ||||
| var cleanCacheInterval string | ||||
| var compression bool | ||||
| var configFile string | ||||
| var configFile *string | ||||
| var round float64 | ||||
| var temperatureUnit string | ||||
|  | ||||
| @@ -21,7 +21,7 @@ var daemonCmd = &cobra.Command{ | ||||
| 	Short: "Read continuously data from all enabled sensors", | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -38,7 +38,7 @@ var daemonCmd = &cobra.Command{ | ||||
| 	}, | ||||
| } | ||||
|  | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
| 	cmd.AddCommand(daemonCmd) | ||||
| 	daemonCmd.Flags().BoolVar(&compression, "compression", true, "Compress measured values") | ||||
|   | ||||
| @@ -5,7 +5,7 @@ import ( | ||||
| ) | ||||
|  | ||||
| var compression bool | ||||
| var configFile string | ||||
| var configFile *string | ||||
| var round float64 | ||||
|  | ||||
| var humidityCmd = &cobra.Command{ | ||||
| @@ -14,7 +14,7 @@ var humidityCmd = &cobra.Command{ | ||||
| } | ||||
|  | ||||
| // Execute a | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
|  | ||||
| 	cmd.AddCommand(humidityCmd) | ||||
|   | ||||
| @@ -21,7 +21,7 @@ var listTemperatureCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -23,7 +23,7 @@ var readHumidityCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -21,7 +21,7 @@ var listTemperatureCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -5,7 +5,7 @@ import ( | ||||
| ) | ||||
|  | ||||
| var compression bool | ||||
| var configFile string | ||||
| var configFile *string | ||||
| var round float64 | ||||
|  | ||||
| var pressureCmd = &cobra.Command{ | ||||
| @@ -14,7 +14,7 @@ var pressureCmd = &cobra.Command{ | ||||
| } | ||||
|  | ||||
| // Execute a | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
|  | ||||
| 	cmd.AddCommand(pressureCmd) | ||||
|   | ||||
| @@ -23,7 +23,7 @@ var readPressureCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -21,7 +21,7 @@ var addRgbLedCmd = &cobra.Command{ | ||||
| flucky rgb-led add my-led GPIO13 GPIO17 GPIO26`), | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -62,7 +62,7 @@ flucky rgb-led add my-led GPIO13 GPIO17 GPIO26`), | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -17,7 +17,7 @@ flucky rgb-led disable 9f8abfc5-91f3-480c-a42d-b990b6f89e5d`, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -29,7 +29,7 @@ flucky rgb-led disable 9f8abfc5-91f3-480c-a42d-b990b6f89e5d`, | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -17,7 +17,7 @@ flucky rgb-led enable 9f8abfc5-91f3-480c-a42d-b990b6f89e5d`, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -29,7 +29,7 @@ flucky rgb-led enable 9f8abfc5-91f3-480c-a42d-b990b6f89e5d`, | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -15,7 +15,7 @@ var listRgbLedCmd = &cobra.Command{ | ||||
| 	Aliases: []string{"ls"}, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -16,7 +16,7 @@ var offRgbLedCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -20,7 +20,7 @@ flucky rgb-led on 1c5b9424-f6e9-4a37-be5c-77e531e94aab red`, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -17,7 +17,7 @@ flucky rgb-led remove 9f8abfc5-91f3-480c-a42d-b990b6f89e5d`, | ||||
| 	Args:    cobra.ExactArgs(1), | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -29,7 +29,7 @@ flucky rgb-led remove 9f8abfc5-91f3-480c-a42d-b990b6f89e5d`, | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -16,7 +16,7 @@ flucky rgb-led disable my-led my-sweet-led | ||||
| flucky rgb-led disable 9f8abfc5-91f3-480c-a42d-b990b6f89e5d my-sweet-led`, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -28,7 +28,7 @@ flucky rgb-led disable 9f8abfc5-91f3-480c-a42d-b990b6f89e5d my-sweet-led`, | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -4,7 +4,7 @@ import ( | ||||
| 	"github.com/spf13/cobra" | ||||
| ) | ||||
|  | ||||
| var configFile string | ||||
| var configFile *string | ||||
|  | ||||
| var rgbLedCmd = &cobra.Command{ | ||||
| 	Use:   "rgb-led", | ||||
| @@ -12,7 +12,7 @@ var rgbLedCmd = &cobra.Command{ | ||||
| } | ||||
|  | ||||
| // InitCmd da | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
|  | ||||
| 	cmd.AddCommand(rgbLedCmd) | ||||
|   | ||||
| @@ -25,7 +25,7 @@ flucky sensor add --wire-id 28-011432f0bb3d outdoor DS18B20 | ||||
| flucky sensor add --i2c-bus 1 --i2c-address 0x76 wetter-station BME280`, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -80,7 +80,7 @@ flucky sensor add --i2c-bus 1 --i2c-address 0x76 wetter-station BME280`, | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -15,7 +15,7 @@ var disableSensorCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -27,7 +27,7 @@ var disableSensorCmd = &cobra.Command{ | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -15,7 +15,7 @@ var enableSensorCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -27,7 +27,7 @@ var enableSensorCmd = &cobra.Command{ | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -15,7 +15,7 @@ var listSensorCmd = &cobra.Command{ | ||||
| 	Aliases: []string{"ls"}, | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -27,7 +27,7 @@ var listSensorCmd = &cobra.Command{ | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -15,7 +15,7 @@ var rmSensorCmd = &cobra.Command{ | ||||
| 	Args:    cobra.ExactArgs(1), | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -27,7 +27,7 @@ var rmSensorCmd = &cobra.Command{ | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -15,7 +15,7 @@ var renameSensorCmd = &cobra.Command{ | ||||
| 	Example: fmt.Sprintf("flucky sensor rename indoor outdoor\nflucky sensor rename f98b00ea-a9b2-4e00-924f-113859d0af2d outdoor"), | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
| @@ -27,7 +27,7 @@ var renameSensorCmd = &cobra.Command{ | ||||
| 		} | ||||
|  | ||||
| 		// save new configuration | ||||
| 		err = config.Write(cnf, configFile) | ||||
| 		err = config.Write(cnf, *configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -4,7 +4,7 @@ import ( | ||||
| 	"github.com/spf13/cobra" | ||||
| ) | ||||
|  | ||||
| var configFile string | ||||
| var configFile *string | ||||
|  | ||||
| var sensorCmd = &cobra.Command{ | ||||
| 	Use:   "sensor", | ||||
| @@ -12,7 +12,7 @@ var sensorCmd = &cobra.Command{ | ||||
| } | ||||
|  | ||||
| // InitCmd da | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
|  | ||||
| 	cmd.AddCommand(sensorCmd) | ||||
|   | ||||
| @@ -21,7 +21,7 @@ var listTemperatureCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -25,7 +25,7 @@ var readTemperatureCmd = &cobra.Command{ | ||||
| 	Run: func(cmd *cobra.Command, args []string) { | ||||
|  | ||||
| 		// read configuration | ||||
| 		cnf, err := config.Read(configFile) | ||||
| 		cnf, err := config.Read(*configFile) | ||||
| 		if err != nil { | ||||
| 			log.Fatalln(err) | ||||
| 		} | ||||
|   | ||||
| @@ -7,7 +7,7 @@ import ( | ||||
| ) | ||||
|  | ||||
| var compression bool | ||||
| var configFile string | ||||
| var configFile *string | ||||
| var round float64 | ||||
|  | ||||
| var temperatureCmd = &cobra.Command{ | ||||
| @@ -17,7 +17,7 @@ var temperatureCmd = &cobra.Command{ | ||||
| } | ||||
|  | ||||
| // Execute a | ||||
| func InitCmd(cmd *cobra.Command, cnfFile string) { | ||||
| func InitCmd(cmd *cobra.Command, cnfFile *string) { | ||||
| 	configFile = cnfFile | ||||
| 	cmd.AddCommand(temperatureCmd) | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user