From b89a831c6f5eaa303704f7718f38732a69881a97 Mon Sep 17 00:00:00 2001 From: Matthew Lemon Date: Tue, 21 Jul 2020 15:19:40 +0100 Subject: created new datamaps dir in cmd --- cmd/main.go | 110 ------------------------------------------------------------ 1 file changed, 110 deletions(-) delete mode 100644 cmd/main.go (limited to 'cmd/main.go') diff --git a/cmd/main.go b/cmd/main.go deleted file mode 100644 index da801b7..0000000 --- a/cmd/main.go +++ /dev/null @@ -1,110 +0,0 @@ -/* -datamaps-go is a simple tool to extract from and send data to spreadsheets. -*/ -package main - -import ( - "flag" - "fmt" - "log" - "os" - "path/filepath" - - "github.com/yulqen/datamaps-go/pkg/db" - "github.com/yulqen/datamaps-go/pkg/reader" -) - -const ( - config_dir_name = "datamaps-go" - db_name = "datamaps.db" -) - -func setUp() (string, error) { - dir, err := os.UserConfigDir() - if err != nil { - return "", err - } - // check if config folder exists - config_path := filepath.Join(dir, config_dir_name) - db_path := filepath.Join(config_path, db_name) - if _, err := os.Stat(config_path); os.IsNotExist(err) { - log.Println("Config directory does not exist.") - log.Printf("Creating config directory %s\n", config_path) - if err := os.Mkdir(filepath.Join(dir, "datamaps-go"), 0700); err != nil { - return "", err - } - } else { - log.Println("Config directory found.") - } - if _, err := os.Stat(db_path); os.IsNotExist(err) { - log.Println("Database does not exist.") - _, err = os.Create(db_path) - if err != nil { - return "", err - } - log.Printf("Creating database file at %s\n", db_path) - } else { - log.Println("Database file found.") - } - return dir, nil -} - -func main() { - // setup command - setupCmd := flag.NewFlagSet("setup", flag.ExitOnError) - setupCmd.Usage = func() { fmt.Println("No, you fucking idiot!") } - - // datamap command and its flags - datamapCmd := flag.NewFlagSet("datamap", flag.ExitOnError) - importFlg := datamapCmd.String("import", "/home/lemon/Documents/datamaps/input/datamap.csv", "Path to datamap") - nameFlg := datamapCmd.String("name", "Unnamed datamap", "The name you want to give to the imported datamap.") - overwriteFlg := datamapCmd.Bool("overwrite", false, "Start fresh with this datamap (erases existing datamap data).") - initialFlg := datamapCmd.Bool("initial", false, "This option must be used where no datamap table yet exists.") - - if len(os.Args) < 2 { - fmt.Println("Expected 'datamap' or 'setup' subcommand") - os.Exit(1) - } - - switch os.Args[1] { - - case "datamap": - datamapCmd.Parse(os.Args[2:]) - fmt.Println("subcommand 'datamap'") - fmt.Println(" import:", *importFlg) - fmt.Println(" name:", *nameFlg) - fmt.Println(" overwrite:", *overwriteFlg) - fmt.Println(" initial:", *initialFlg) - - dir, err := os.UserConfigDir() - if err != nil { - os.Exit(1) - } - // check if config folder exists - config_path := filepath.Join(dir, config_dir_name) - - if _, err := os.Stat(config_path); os.IsNotExist(err) { - fmt.Println("Config directory and database does not exist. Run datamaps setup to fix.") - os.Exit(1) - } - data, err := reader.ReadDML(*importFlg) - if err != nil { - log.Fatal(err) - } - - err = db.DatamapToDB(data, *nameFlg, *importFlg) - if err != nil { - log.Fatal(err) - } - case "setup": - setupCmd.Parse(os.Args[2:]) - _, err := setUp() - if err != nil { - log.Fatal(err) - } - - default: - fmt.Println("Do not recognised that command. Expected 'datamap' subcommand.") - os.Exit(1) - } -} -- cgit v1.2.3