fix: configuration pkg

This commit is contained in:
2019-02-17 18:23:59 +01:00
parent 60fa83244e
commit c437127531
18 changed files with 596 additions and 420 deletions

View File

@ -3,8 +3,7 @@ package remote
import (
"log"
"git.cryptic.systems/fh-trier/go-flucky/pkg/remote"
"git.cryptic.systems/fh-trier/go-flucky/pkg/types"
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
@ -16,19 +15,35 @@ var addRemoteCmd = &cobra.Command{
Args: cobra.ExactArgs(2),
Run: func(cmd *cobra.Command, args []string) {
remoteObject := types.Remote{
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// create new remote struct
remote := config.Remote{
Name: args[0],
Address: args[1],
Enabled: enabled,
}
if err := remote.Add(&remoteObject, configDir); err != nil {
log.Fatal(err)
// // add remote entry to list
err = fc.AddRemote(&remote)
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
remoteCmd.AddCommand(addRemoteCmd)
addRemoteCmd.Flags().BoolVarP(&enabled, "enabled", "e", true, "Enable Remote Link")
addRemoteCmd.Flags().BoolVarP(&enabled, "enable", "e", true, "Enable")
}

View File

@ -3,7 +3,7 @@ package remote
import (
"log"
"git.cryptic.systems/fh-trier/go-flucky/pkg/remote"
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
@ -13,9 +13,24 @@ var disableRemoteCmd = &cobra.Command{
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
if err := remote.Disable(args[0], configDir); err != nil {
log.Fatal(err)
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// disnable remote address
err = fc.DisableRemote(args[0])
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}

View File

@ -3,7 +3,7 @@ package remote
import (
"log"
"git.cryptic.systems/fh-trier/go-flucky/pkg/remote"
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
@ -13,8 +13,22 @@ var enableRemoteCmd = &cobra.Command{
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
if err := remote.Enable(args[0], configDir); err != nil {
log.Fatal(err)
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// enable remote address
err = fc.EnableRemote(args[0])
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}

View File

@ -4,7 +4,7 @@ import (
"log"
"os"
"git.cryptic.systems/fh-trier/go-flucky/pkg/remote"
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
@ -16,14 +16,26 @@ var listRemoteCmd = &cobra.Command{
Aliases: []string{"ls"},
Run: func(cmd *cobra.Command, args []string) {
if err := remote.Print(os.Stdout, configDir, quiet); err != nil {
log.Fatal(err)
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// print all configured remote addresses on stdout
err = fc.PrintRemotes(os.Stdout)
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
remoteCmd.AddCommand(listRemoteCmd)
listRemoteCmd.Flags().BoolVarP(&quiet, "quiet", "q", false, "List only sensor id's")
}

View File

@ -4,15 +4,15 @@ import (
"github.com/spf13/cobra"
)
var configDir string
var cfg string
var remoteCmd = &cobra.Command{
Use: "remote",
Short: "Manage Remote Server",
}
func InitCmd(cmd *cobra.Command, cnf string) {
configDir = cnf
func InitCmd(cmd *cobra.Command, config string) {
cfg = config
cmd.AddCommand(remoteCmd)
}

View File

@ -3,32 +3,37 @@ package remote
import (
"log"
"git.cryptic.systems/fh-trier/go-flucky/pkg/remote"
"git.cryptic.systems/fh-trier/go-flucky/pkg/config"
"github.com/spf13/cobra"
)
var all bool
var rmRemoteCmd = &cobra.Command{
Use: "rm",
Short: "Remove Remote Server",
Aliases: []string{"remove"},
Args: cobra.RangeArgs(0, 1),
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
if all {
if err := remote.RemoveAll(configDir); err != nil {
log.Fatal(err)
}
} else {
if err := remote.Remove(args[0], configDir); err != nil {
log.Fatal(err)
}
// read configuration
fc, err := config.Read(cfg)
if err != nil {
log.Fatalln(err)
}
// add remote entry to list
err = fc.RemoveRemote(args[0])
if err != nil {
log.Fatalln(err)
}
// save new configuration
err = config.Write(fc, cfg)
if err != nil {
log.Fatalln(err)
}
},
}
func init() {
remoteCmd.AddCommand(rmRemoteCmd)
rmRemoteCmd.Flags().BoolVarP(&all, "all", "a", false, "Select all remote connections")
}

View File

@ -1,27 +0,0 @@
package remote
import (
"log"
"git.cryptic.systems/fh-trier/go-flucky/pkg/httpcall"
"github.com/spf13/cobra"
)
var force bool
var syncRemoteCmd = &cobra.Command{
Use: "sync",
Aliases: []string{"synchronize"},
Short: "Synchronise Device Values with Remote Servers",
Run: func(cmd *cobra.Command, args []string) {
if err := httpcall.SyncDevice(configDir, force); err != nil {
log.Fatal(err)
}
},
}
func init() {
remoteCmd.AddCommand(syncRemoteCmd)
syncRemoteCmd.Flags().BoolVarP(&force, "force", "f", false, "Include disabled remote links")
}