fix/sqlite #10

Merged
jake merged 17 commits from fix/sqlite into main 2025-06-19 21:58:10 +00:00
12 changed files with 53 additions and 31 deletions
Showing only changes of commit 71ace969d3 - Show all commits

View File

@ -41,9 +41,11 @@ var addCmd = &cobra.Command{
cobra.CheckErr(err)
err = db.SaveCmd(cfgname, cfgcmd)
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -8,6 +8,8 @@ import (
)
const (
//sqlite doesn't have an error type for this error, but we want to catch when this error is thrown
//and provide the proper response. It should not be treated as an error if the db isn't setup.
ErrInit = "sqlite3: SQL logic error: no such table: commands"
ErrInitRsp = "The 'init' command must be run before mctl can be used"
)

View File

@ -22,9 +22,11 @@ var deleteCmd = &cobra.Command{
defer db.Close()
err = db.DeleteCmd(args[0])
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -33,11 +33,11 @@ var runCmd = &cobra.Command{
defer db.Close()
crun, err := db.GetCmd(cname)
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return nil
}
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return nil
}
return err
}

View File

@ -21,9 +21,11 @@ var viewCmd = &cobra.Command{
defer db.Close()
ts, err := db.GetAllCmds()
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -31,9 +31,11 @@ var destroyCmd = &cobra.Command{
defer db.Close()
err = db.Destroy()
if err.Error() == command.ErrInit {
fmt.Println(command.ErrInitRsp)
return
if err != nil {
if err.Error() == command.ErrInit {
fmt.Println(command.ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -22,9 +22,11 @@ var activeCmd = &cobra.Command{
defer db.Close()
err = db.SetActiveServer(args[0])
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -63,9 +63,11 @@ var addCmd = &cobra.Command{
Port: fp,
Password: base64.StdEncoding.EncodeToString(ps),
})
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -22,9 +22,11 @@ var deleteCmd = &cobra.Command{
defer db.Close()
err = db.DeleteServer(args[0])
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -8,6 +8,8 @@ import (
)
const (
//sqlite doesn't have an error type for this error, but we want to catch when this error is thrown
//and provide the proper response. It should not be treated as an error if the db isn't setup.
ErrInit = "sqlite3: SQL logic error: no such table: servers"
ErrInitRsp = "The 'init' command must be run before mctl can be used"
)

View File

@ -30,9 +30,11 @@ var updateCmd = &cobra.Command{
defer db.Close()
err = db.UpdateServer(args[0], base64.StdEncoding.EncodeToString(ps))
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)

View File

@ -21,9 +21,11 @@ var viewCmd = &cobra.Command{
defer db.Close()
ts, err := db.GetAllServers()
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return
}
}
cobra.CheckErr(err)