Browse Source

returning string for access key

afeiszli 4 years ago
parent
commit
5b955f2201
3 changed files with 84 additions and 1 deletions
  1. 1 1
      controllers/groupHttpController.go
  2. 8 0
      main.go
  3. 75 0
      serverctl/serverctl.go

+ 1 - 1
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

+ 8 - 0
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)
+			}
+			*/
 		}
 	}
 

+ 75 - 0
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
+}
+
+