update for micro changes

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
Василий Толстов 2020-12-19 23:34:51 +03:00
parent 6db6cf6ef0
commit 71dea38d90
3 changed files with 17 additions and 32 deletions

2
go.mod
View File

@ -6,5 +6,5 @@ require (
github.com/hashicorp/go-multierror v1.1.0 // indirect github.com/hashicorp/go-multierror v1.1.0 // indirect
github.com/hashicorp/go-rootcerts v1.0.2 // indirect github.com/hashicorp/go-rootcerts v1.0.2 // indirect
github.com/hashicorp/vault/api v1.0.4 github.com/hashicorp/vault/api v1.0.4
github.com/unistack-org/micro/v3 v3.0.2-0.20201213102644-92aec349c3d4 github.com/unistack-org/micro/v3 v3.0.2-0.20201219202205-150e8ad698bb
) )

2
go.sum
View File

@ -297,6 +297,8 @@ github.com/transip/gotransip v0.0.0-20190812104329-6d8d9179b66f/go.mod h1:i0f4R4
github.com/uber-go/atomic v1.3.2/go.mod h1:/Ct5t2lcmbJ4OSe/waGBoaVvVqtO0bmtfVNex1PFV8g= github.com/uber-go/atomic v1.3.2/go.mod h1:/Ct5t2lcmbJ4OSe/waGBoaVvVqtO0bmtfVNex1PFV8g=
github.com/unistack-org/micro/v3 v3.0.2-0.20201213102644-92aec349c3d4 h1:SmwEx/EYb7iUOdDZHiamtwRFfnhiZjtzmVdLZq+KQM0= github.com/unistack-org/micro/v3 v3.0.2-0.20201213102644-92aec349c3d4 h1:SmwEx/EYb7iUOdDZHiamtwRFfnhiZjtzmVdLZq+KQM0=
github.com/unistack-org/micro/v3 v3.0.2-0.20201213102644-92aec349c3d4/go.mod h1:0DgOy4OdJxQCDER8YSKitZugd2+1bddrRSNfeooTHDc= github.com/unistack-org/micro/v3 v3.0.2-0.20201213102644-92aec349c3d4/go.mod h1:0DgOy4OdJxQCDER8YSKitZugd2+1bddrRSNfeooTHDc=
github.com/unistack-org/micro/v3 v3.0.2-0.20201219202205-150e8ad698bb h1:cJGF8j30idReDyjRCvEJN5waWCh/AKuiKEqLA8OLMlY=
github.com/unistack-org/micro/v3 v3.0.2-0.20201219202205-150e8ad698bb/go.mod h1:0DgOy4OdJxQCDER8YSKitZugd2+1bddrRSNfeooTHDc=
github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
github.com/vultr/govultr v0.1.4/go.mod h1:9H008Uxr/C4vFNGLqKx232C206GL0PBHzOP0809bGNA= github.com/vultr/govultr v0.1.4/go.mod h1:9H008Uxr/C4vFNGLqKx232C206GL0PBHzOP0809bGNA=
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU=

View File

@ -91,48 +91,31 @@ func (c *vaultConfig) Init(opts ...config.Option) error {
func (c *vaultConfig) Load(ctx context.Context) error { func (c *vaultConfig) Load(ctx context.Context) error {
for _, fn := range c.opts.BeforeLoad { for _, fn := range c.opts.BeforeLoad {
if err := fn(ctx, c); err != nil { if err := fn(ctx, c); err != nil && !c.opts.AllowFail {
return err return err
} }
} }
//_, version, err := getKVinfo(c.cli, c.path)
//if err != nil {
// return err
//}
pair, err := c.cli.Logical().Read(c.path) pair, err := c.cli.Logical().Read(c.path)
if err != nil { if err != nil && !c.opts.AllowFail {
return err return err
} else if pair == nil { } else if (pair == nil || pair.Data == nil) && !c.opts.AllowFail {
return ErrPathNotExist
} else if pair.Data == nil {
return ErrPathNotExist return ErrPathNotExist
} }
//fmt.Printf("%#+v\n", pair)
//reload secrets from vault's data
//data := pair.Data
var data []byte
data, err = json.Marshal(pair.Data["data"])
/* if err == nil && pair != nil && pair.Data != nil {
switch version { var data []byte
case 1: data, err = json.Marshal(pair.Data["data"])
dataBytes, err = json.Marshal(data) if err == nil {
case 2: err = c.opts.Codec.Unmarshal(data, c.opts.Struct)
dataBytes, err = json.Marshal(data["data"]) }
if err != nil && !c.opts.AllowFail {
return err
} }
*/
if err != nil {
return err
}
if err = c.opts.Codec.Unmarshal(data, c.opts.Struct); err != nil {
return err
} }
for _, fn := range c.opts.AfterLoad { for _, fn := range c.opts.AfterLoad {
if err := fn(ctx, c); err != nil { if err := fn(ctx, c); err != nil && !c.opts.AllowFail {
return err return err
} }
} }
@ -142,13 +125,13 @@ func (c *vaultConfig) Load(ctx context.Context) error {
func (c *vaultConfig) Save(ctx context.Context) error { func (c *vaultConfig) Save(ctx context.Context) error {
for _, fn := range c.opts.BeforeSave { for _, fn := range c.opts.BeforeSave {
if err := fn(ctx, c); err != nil { if err := fn(ctx, c); err != nil && !c.opts.AllowFail {
return err return err
} }
} }
for _, fn := range c.opts.AfterSave { for _, fn := range c.opts.AfterSave {
if err := fn(ctx, c); err != nil { if err := fn(ctx, c); err != nil && !c.opts.AllowFail {
return err return err
} }
} }