diff --git a/controllers/groupHttpController.go b/controllers/groupHttpController.go index 44c0b980..d824aea9 100644 --- a/controllers/groupHttpController.go +++ b/controllers/groupHttpController.go @@ -551,7 +551,7 @@ func createAccessKey(w http.ResponseWriter, r *http.Request) { mongoconn.GetError(errN, w) return } - w.Write([]byte(accesskey.Value)) + w.Write([]byte(accesskey.AccessString)) } //pretty simple get diff --git a/main.go b/main.go index 3211d7f9..2e1fcb76 100644 --- a/main.go +++ b/main.go @@ -7,6 +7,7 @@ import ( "log" "github.com/gravitl/netmaker/models" "github.com/gravitl/netmaker/controllers" + //"github.com/gravitl/netmaker/serverctl" "github.com/gravitl/netmaker/functions" "github.com/gravitl/netmaker/mongoconn" "github.com/gravitl/netmaker/config" @@ -38,6 +39,13 @@ func main() { err := createDefaultNetwork() if err != nil { fmt.Printf("Error creating default network: %v", err) + } else { + /* + err = serverctl.NetworkAdd(config.Config.Server.DefaultNetName) + if err != nil { + fmt.Printf("Error adding to default network: %v", err) + } + */ } } diff --git a/serverctl/serverctl.go b/serverctl/serverctl.go new file mode 100644 index 00000000..d72632d9 --- /dev/null +++ b/serverctl/serverctl.go @@ -0,0 +1,75 @@ +package serverctl + +import ( + "fmt" + "io/ioutil" + "log" + "os" + "os/exec" +) + + +func fileExists(f string) bool { + info, err := os.Stat(f) + if os.IsNotExist(err) { + return false + } + notisdir := !info.IsDir() + return notisdir +} + + +func installScript() error { + + + installScript := `#!/bin/sh +set -e + +[ -z "$SERVER_URL" ] && echo "Need to set SERVER_URL" && exit 1; +[ -z "$NET_NAME" ] && echo "Need to set NET_NAME" && exit 1; +[ -z "$KEY" ] && KEY=nokey; + + + +wget -O netclient https://github.com/gravitl/netmaker/releases/download/develop/netclient +chmod +x netclient +sudo ./netclient -c install -s $SERVER_URL -g $NET_NAME -k $KEY +rm -f netclient +` + + installbytes := []byte(installScript) + + err := ioutil.WriteFile("/etc/netclient/netclient-install.sh", installbytes, 0755) + if err != nil { + log.Println(err) + return err + } + return err +} + + +func NetworkAdd(network string) error { + _, err := os.Stat("/etc/netclient") + if os.IsNotExist(err) { + os.Mkdir("/etc/netclient", 744) + } else if err != nil { + fmt.Println("couldnt find or create /etc/netclient") + return err + } + if !fileExists("/etc/netclient/netclient-install.sh") { + err = installScript() + if err != nil { + log.Println(err) + return err + } + } + + cmdoutput, err := exec.Command("/bin/sh", "/etc/netclient/netclient-install.sh").Output() + if err != nil { + fmt.Printf("Error installing netclient: %s", err) + } + fmt.Println(cmdoutput) + return err +} + +