Skip to content

Commit

Permalink
Fix #3
Browse files Browse the repository at this point in the history
  • Loading branch information
xzyaoi committed Sep 25, 2018
1 parent 0992046 commit 2931dd5
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 10 deletions.
25 changes: 25 additions & 0 deletions cli/config.go
@@ -1,6 +1,7 @@
package main

import (
"os"
"bytes"
"github.com/BurntSushi/toml"
"github.com/mitchellh/go-homedir"
Expand All @@ -22,6 +23,17 @@ type local struct {

var apiURL = "http://192.168.1.12:8080/"

func isPathExists(path string) (bool, error) {
_, err := os.Stat(path)
if err != nil {
return true, nil
}
if os.IsNotExist(err) {
return false, nil
}
return false, err
}

func readConfig() cvpmConfig {
var config cvpmConfig
homepath, _ := homedir.Dir()
Expand Down Expand Up @@ -61,3 +73,16 @@ func getDefaultConfig() cvpmConfig {
var defaultCVPMConfig = cvpmConfig{Local: defaultLocal, Repositories: []Repository{}}
return defaultCVPMConfig
}

func validateConfig() {
localConfig := readConfig()
// Validate CVPM Path
cvpmPath := filepath.Join(homepath, "cvpm")
exist, err := isPathExists(cvpmPath)
if !exist {
err:= os.Mkdir(cvpmPath, os.ModePerm)
if err != nil {
log.Fatal(err)
}
}
}
12 changes: 12 additions & 0 deletions cli/handler.go
Expand Up @@ -14,6 +14,18 @@ import (
"strings"
)

func LoginHandler(c *cli.Context) {
reader := bufio.NewReader(os.Stdin)
fmt.Printf("Username: ")
username, _ := reader.ReadString('\n')
username = strings.TrimSpace(username)
fmt.Printf("Password: ")
bytePassword, _ := terminal.ReadPassword(int(syscall.Stdin))
password := strings.TrimSpace(string(bytePassword))
u := User{username, password, ""}
currentUser = u.login()
}

func InstallHandler(c *cli.Context) {
config := readConfig()
localFolder := config.Local.LocalFolder
Expand Down
10 changes: 1 addition & 9 deletions cli/main.go
Expand Up @@ -25,15 +25,7 @@ func main() {
{
Name: "login",
Action: func(c *cli.Context) error {
reader := bufio.NewReader(os.Stdin)
fmt.Printf("Username: ")
username, _ := reader.ReadString('\n')
username = strings.TrimSpace(username)
fmt.Printf("Password: ")
bytePassword, _ := terminal.ReadPassword(int(syscall.Stdin))
password := strings.TrimSpace(string(bytePassword))
u := User{username, password, ""}
currentUser = u.login()
LoginHandler(c)
return nil
},
},
Expand Down
2 changes: 1 addition & 1 deletion cvpm/solver.py
Expand Up @@ -32,7 +32,7 @@ def help_message(self):
members = self.bundle.members()
return json.dumps(members)
else:
return json.dumps({"error": "Initializing...", "code": "101"}), 101
return json.dumps({"error": "Failed to start", "code": "101"}), 101

def _prepare_models(self, toml_file):
parsed_toml = toml.load(toml_file)
Expand Down
3 changes: 3 additions & 0 deletions cvpm/utility.py
Expand Up @@ -19,6 +19,9 @@ def __init__(self):
pass

def download(self, url, target):
# check if target folder exists
if not os.path.isdir(target):
os.makedirs(target)
filename = url.split('/')[-1]
file_size = int(urlopen(url).info().get('Content-Length', -1))
chunk_size = 1024
Expand Down

0 comments on commit 2931dd5

Please sign in to comment.