From 8035547b24436259f2100b8fb3d932aefc399990 Mon Sep 17 00:00:00 2001 From: Fernandez Ludovic Date: Sat, 20 Apr 2019 21:34:23 +0200 Subject: [PATCH] refactor: fix fixme. --- cmd/root.go | 44 ++++++++++++++++++++++++++++++++++++++++++- dumper/config.go | 2 +- dumper/dumper.go | 4 ++-- dumper/file/file.go | 2 +- dumper/info.go | 46 --------------------------------------------- dumper/kv/config.go | 2 +- dumper/kv/kv.go | 2 +- 7 files changed, 49 insertions(+), 53 deletions(-) diff --git a/cmd/root.go b/cmd/root.go index 8d6dfcf..439abd0 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -2,8 +2,10 @@ package cmd import ( "fmt" + "io/ioutil" "log" "os" + "path/filepath" "strconv" "github.com/ldez/traefik-certs-dumper/dumper" @@ -117,6 +119,46 @@ func runE(apply func(*dumper.BaseConfig, *cobra.Command) error) func(*cobra.Comm return err } - return dumper.Tree(baseConfig.DumpPath, "") + return tree(baseConfig.DumpPath, "") } } + +func tree(root, indent string) error { + fi, err := os.Stat(root) + if err != nil { + return fmt.Errorf("could not stat %s: %v", root, err) + } + + fmt.Println(fi.Name()) + if !fi.IsDir() { + return nil + } + + fis, err := ioutil.ReadDir(root) + if err != nil { + return fmt.Errorf("could not read dir %s: %v", root, err) + } + + var names []string + for _, fi := range fis { + if fi.Name()[0] != '.' { + names = append(names, fi.Name()) + } + } + + for i, name := range names { + add := "│ " + if i == len(names)-1 { + fmt.Printf(indent + "└──") + add = " " + } else { + fmt.Printf(indent + "├──") + } + + if err := tree(filepath.Join(root, name), indent+add); err != nil { + return err + } + } + + return nil +} diff --git a/dumper/config.go b/dumper/config.go index bf8a860..94dc780 100644 --- a/dumper/config.go +++ b/dumper/config.go @@ -1,6 +1,6 @@ package dumper -// BaseConfig FIXME +// BaseConfig Base dump command configuration. type BaseConfig struct { DumpPath string CrtInfo FileInfo diff --git a/dumper/dumper.go b/dumper/dumper.go index 9944737..e523687 100644 --- a/dumper/dumper.go +++ b/dumper/dumper.go @@ -14,13 +14,13 @@ const ( keysSubDir = "private" ) -// FileInfo FIXME +// FileInfo File information. type FileInfo struct { Name string Ext string } -// Dump FIXME +// Dump Dumps data to certificates. func Dump(data *StoredData, baseConfig *BaseConfig) error { if err := os.RemoveAll(baseConfig.DumpPath); err != nil { return err diff --git a/dumper/file/file.go b/dumper/file/file.go index 83a165a..9653b6e 100644 --- a/dumper/file/file.go +++ b/dumper/file/file.go @@ -7,7 +7,7 @@ import ( "github.com/ldez/traefik-certs-dumper/dumper" ) -// Dump FIXME +// Dump Dumps "acme.json" file to certificates. func Dump(acmeFile string, baseConfig *dumper.BaseConfig) error { data, err := readFile(acmeFile) if err != nil { diff --git a/dumper/info.go b/dumper/info.go index 9dc4e51..793f1f7 100644 --- a/dumper/info.go +++ b/dumper/info.go @@ -1,11 +1,6 @@ package dumper import ( - "fmt" - "io/ioutil" - "os" - "path/filepath" - "github.com/go-acme/lego/certcrypto" "github.com/go-acme/lego/registration" ) @@ -38,44 +33,3 @@ type Account struct { PrivateKey []byte KeyType certcrypto.KeyType } - -// Tree FIXME move -func Tree(root, indent string) error { - fi, err := os.Stat(root) - if err != nil { - return fmt.Errorf("could not stat %s: %v", root, err) - } - - fmt.Println(fi.Name()) - if !fi.IsDir() { - return nil - } - - fis, err := ioutil.ReadDir(root) - if err != nil { - return fmt.Errorf("could not read dir %s: %v", root, err) - } - - var names []string - for _, fi := range fis { - if fi.Name()[0] != '.' { - names = append(names, fi.Name()) - } - } - - for i, name := range names { - add := "│ " - if i == len(names)-1 { - fmt.Printf(indent + "└──") - add = " " - } else { - fmt.Printf(indent + "├──") - } - - if err := Tree(filepath.Join(root, name), indent+add); err != nil { - return err - } - } - - return nil -} diff --git a/dumper/kv/config.go b/dumper/kv/config.go index 8c3072a..f2f5e10 100644 --- a/dumper/kv/config.go +++ b/dumper/kv/config.go @@ -2,7 +2,7 @@ package kv import "github.com/abronan/valkeyrie/store" -// Config FIXME +// Config KV configuration. type Config struct { Backend store.Backend Prefix string diff --git a/dumper/kv/kv.go b/dumper/kv/kv.go index eed8431..8b22d7a 100644 --- a/dumper/kv/kv.go +++ b/dumper/kv/kv.go @@ -14,7 +14,7 @@ import ( const storeKeySuffix = "/acme/account/object" -// Dump FIXME +// Dump Dumps KV content to certificates. func Dump(config *Config, baseConfig *dumper.BaseConfig) error { kvStore, err := valkeyrie.NewStore(config.Backend, config.Endpoints, config.Options) if err != nil {