Checking if cmd file exists before trying to create it

This commit is contained in:
Ian Walter 2016-04-28 21:23:46 -04:00
parent a6cbaf61ec
commit b4c7072b6b

View file

@ -14,6 +14,7 @@
package cmd package cmd
import ( import (
"os"
"path" "path"
"fmt" "fmt"
"path/filepath" "path/filepath"
@ -63,7 +64,6 @@ Example: cobra add server -> resulting in a new cmd/server.go
currentPath += pName + "/" currentPath += pName + "/"
} }
// TODO Create command file if it does not already exist.
createCmdFile(cmd, currentPath) createCmdFile(cmd, currentPath)
} }
@ -98,7 +98,7 @@ import (
) )
// {{ .cmdName | title }}Cmd represents the {{ .cmdName }} command // {{ .cmdName | title }}Cmd represents the {{ .cmdName }} command
{{ .cmdName | title }}Cmd := &cobra.Command{ var {{ .cmdName | title }}Cmd = &cobra.Command{
Use: "{{ .cmdName }}", Use: "{{ .cmdName }}",
Short: "A brief description of your command", Short: "A brief description of your command",
Long: ` + "`" + `A longer description that spans multiple lines and likely contains examples Long: ` + "`" + `A longer description that spans multiple lines and likely contains examples
@ -147,8 +147,13 @@ func init() {
file := filepath.Join(ProjectPath(), guessCmdDir(), cmdPath, cmdName+".go") file := filepath.Join(ProjectPath(), guessCmdDir(), cmdPath, cmdName+".go")
// Check if the file exists before trying to create it.
if _, err := os.Stat(file); os.IsNotExist(err) {
if err := writeTemplateToFile(file, template, data); err != nil { if err := writeTemplateToFile(file, template, data); err != nil {
er(err) er(err)
} }
fmt.Println(cmdName, "created at", file) fmt.Println(cmdName, "created at", file)
} else {
fmt.Println(cmdName, "already exists at", file)
}
} }