From 4011f3e83f88744591f69ad06abcbd5ca5bc723a Mon Sep 17 00:00:00 2001 From: Akilan Date: Sat, 25 Feb 2023 00:26:04 +0000 Subject: [PATCH] added fix for update function for config file --- config/config.go | 52 +++++++++++++++++++++++++++--------------------- main.go | 9 ++++++--- 2 files changed, 35 insertions(+), 26 deletions(-) diff --git a/config/config.go b/config/config.go index dc209db..5b8c08a 100644 --- a/config/config.go +++ b/config/config.go @@ -1,7 +1,9 @@ package config import ( + "encoding/json" "github.com/spf13/viper" + "io/ioutil" "os" "os/user" ) @@ -131,33 +133,37 @@ func ConfigInit() (*Config, error) { func (c *Config) WriteConfig() error { //Getting Current Directory from environment variable - curDir := os.Getenv("REMOTEGAMING") - - //Setting current directory to default path - defaultPath = curDir + "/" - - //Setting default paths for the config file - defaults["SystemUsername"] = c.SystemUsername - defaults["BarrierHostName"] = c.BarrierHostName - defaults["Rooms"] = c.Rooms - defaults["IPAddress"] = c.IPAddress - defaults["ScriptToExecute"] = c.ScriptToExecute - defaults["SSHPassword"] = c.SSHPassword - defaults["NATEscapeServerPort"] = c.NATEscapeServerPort - defaults["NATEscapeBarrierPort"] = c.NATEscapeBarrierPort + //curDir := os.Getenv("REMOTEGAMING") + // + ////Setting current directory to default path + //defaultPath = curDir + "/" + // + ////Setting default paths for the config file + //defaults["SystemUsername"] = c.SystemUsername + //defaults["BarrierHostName"] = c.BarrierHostName + //defaults["Rooms"] = c.Rooms + //defaults["IPAddress"] = c.IPAddress + //defaults["ScriptToExecute"] = c.ScriptToExecute + //defaults["SSHPassword"] = c.SSHPassword + //defaults["NATEscapeServerPort"] = c.NATEscapeServerPort + //defaults["NATEscapeBarrierPort"] = c.NATEscapeBarrierPort // If the config file exists remove and make a new one //if fileExists(defaultPath + "config.json") { - err := os.Remove(defaultPath + "config.json") - if err != nil { - return err - } + //err := os.Remove(defaultPath + "config.json") + //if err != nil { + // return err + //} //} - //Calling configuration file - _, err = ConfigInit() - if err != nil { - return err - } + ////Calling configuration file + //_, err = ConfigInit() + //if err != nil { + // return err + //} + + file, _ := json.MarshalIndent(c, "", " ") + + _ = ioutil.WriteFile("config.json", file, 0644) return nil } diff --git a/main.go b/main.go index 2c478d3..3db5eed 100644 --- a/main.go +++ b/main.go @@ -18,7 +18,7 @@ func main() { addr := flag.String("addr", "localhost", "Listen address") port := flag.String("port", "8888", "port for running the server") tls := flag.Bool("tls", false, "Use TLS") - //setconfig := flag.Bool("setconfig", false, "Generates a config file") + setconfig := flag.Bool("setconfig", false, "Generates a config file") certFile := flag.String("certFile", "files/server.crt", "TLS cert file") keyFile := flag.String("keyFile", "files/server.key", "TLS key file") headless := flag.Bool("headless", false, "Creating screenshare using headless mode") @@ -34,8 +34,11 @@ func main() { rand.Seed(time.Now().UnixNano()) server := core.GetHttp() - err := config.SetDefaults() - if err != nil { + if *setconfig { + err := config.SetDefaults() + if err != nil { + return + } return }