mirror of
https://github.com/Luzifer/vault-unseal.git
synced 2024-12-22 22:01:20 +00:00
update rconfig
This commit is contained in:
parent
0ece8e907c
commit
9031b6d204
4 changed files with 38 additions and 3 deletions
6
Godeps/Godeps.json
generated
6
Godeps/Godeps.json
generated
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/Jimdo/vault-unseal",
|
"ImportPath": "github.com/Jimdo/vault-unseal",
|
||||||
"GoVersion": "go1.6",
|
"GoVersion": "go1.6",
|
||||||
"GodepVersion": "v60",
|
"GodepVersion": "v74",
|
||||||
"Deps": [
|
"Deps": [
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/Luzifer/rconfig",
|
"ImportPath": "github.com/Luzifer/rconfig",
|
||||||
"Comment": "v1.0.2",
|
"Comment": "v1.1.0",
|
||||||
"Rev": "d194dded1e1c7630486e642cacc09400f94f32a2"
|
"Rev": "c27bd3a64b5b19556914d9fec69922cf3852d585"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ImportPath": "github.com/spf13/pflag",
|
"ImportPath": "github.com/spf13/pflag",
|
||||||
|
|
5
vendor/github.com/Luzifer/rconfig/History.md
generated
vendored
Normal file
5
vendor/github.com/Luzifer/rconfig/History.md
generated
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# 1.1.0 / 2016-06-28
|
||||||
|
|
||||||
|
* Support time.Duration config parameters
|
||||||
|
* Added goreportcard badge
|
||||||
|
* Added testcase for using bool with ENV and default
|
1
vendor/github.com/Luzifer/rconfig/README.md
generated
vendored
1
vendor/github.com/Luzifer/rconfig/README.md
generated
vendored
|
@ -1,6 +1,7 @@
|
||||||
[![Build Status](https://travis-ci.org/Luzifer/rconfig.svg?branch=master)](https://travis-ci.org/Luzifer/rconfig)
|
[![Build Status](https://travis-ci.org/Luzifer/rconfig.svg?branch=master)](https://travis-ci.org/Luzifer/rconfig)
|
||||||
[![License: Apache v2.0](https://badge.luzifer.io/v1/badge?color=5d79b5&title=license&text=Apache+v2.0)](http://www.apache.org/licenses/LICENSE-2.0)
|
[![License: Apache v2.0](https://badge.luzifer.io/v1/badge?color=5d79b5&title=license&text=Apache+v2.0)](http://www.apache.org/licenses/LICENSE-2.0)
|
||||||
[![Documentation](https://badge.luzifer.io/v1/badge?title=godoc&text=reference)](https://godoc.org/github.com/Luzifer/rconfig)
|
[![Documentation](https://badge.luzifer.io/v1/badge?title=godoc&text=reference)](https://godoc.org/github.com/Luzifer/rconfig)
|
||||||
|
[![Go Report](http://goreportcard.com/badge/Luzifer/rconfig)](http://goreportcard.com/report/Luzifer/rconfig)
|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
|
|
29
vendor/github.com/Luzifer/rconfig/config.go
generated
vendored
29
vendor/github.com/Luzifer/rconfig/config.go
generated
vendored
|
@ -10,6 +10,7 @@ import (
|
||||||
"reflect"
|
"reflect"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
"time"
|
||||||
|
|
||||||
"github.com/spf13/pflag"
|
"github.com/spf13/pflag"
|
||||||
)
|
)
|
||||||
|
@ -44,6 +45,11 @@ func Parse(config interface{}) error {
|
||||||
return parse(config, nil)
|
return parse(config, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Args returns the non-flag command-line arguments.
|
||||||
|
func Args() []string {
|
||||||
|
return fs.Args()
|
||||||
|
}
|
||||||
|
|
||||||
// Usage prints a basic usage with the corresponding defaults for the flags to
|
// Usage prints a basic usage with the corresponding defaults for the flags to
|
||||||
// os.Stdout. The defaults are derived from the `default` struct-tag and the ENV.
|
// os.Stdout. The defaults are derived from the `default` struct-tag and the ENV.
|
||||||
func Usage() {
|
func Usage() {
|
||||||
|
@ -95,6 +101,29 @@ func execTags(in interface{}, fs *pflag.FlagSet) error {
|
||||||
value = envDefault(typeField.Tag.Get("env"), value)
|
value = envDefault(typeField.Tag.Get("env"), value)
|
||||||
parts := strings.Split(typeField.Tag.Get("flag"), ",")
|
parts := strings.Split(typeField.Tag.Get("flag"), ",")
|
||||||
|
|
||||||
|
switch typeField.Type {
|
||||||
|
case reflect.TypeOf(time.Duration(0)):
|
||||||
|
v, err := time.ParseDuration(value)
|
||||||
|
if err != nil {
|
||||||
|
if value == "" {
|
||||||
|
v = time.Duration(0)
|
||||||
|
} else {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if typeField.Tag.Get("flag") != "" {
|
||||||
|
if len(parts) == 1 {
|
||||||
|
fs.DurationVar(valField.Addr().Interface().(*time.Duration), parts[0], v, typeField.Tag.Get("description"))
|
||||||
|
} else {
|
||||||
|
fs.DurationVarP(valField.Addr().Interface().(*time.Duration), parts[0], parts[1], v, typeField.Tag.Get("description"))
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
valField.Set(reflect.ValueOf(v))
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
switch typeField.Type.Kind() {
|
switch typeField.Type.Kind() {
|
||||||
case reflect.String:
|
case reflect.String:
|
||||||
if typeField.Tag.Get("flag") != "" {
|
if typeField.Tag.Get("flag") != "" {
|
||||||
|
|
Loading…
Reference in a new issue