Files
threshold/internal/cmd/format.go
T
2020-03-04 12:51:46 -05:00

35 lines
642 B
Go

package cmd
import (
"os"
"github.com/hashicorp/watchtower/internal/cmd/base"
"github.com/mitchellh/cli"
)
type Formatter interface {
//Output(ui cli.Ui, secret *api.Secret, data interface{}) error
Format(data interface{}) ([]byte, error)
}
var Formatters = map[string]Formatter{
"json": base.JsonFormatter{},
"table": base.TableFormatter{},
"yaml": base.YamlFormatter{},
"yml": base.YamlFormatter{},
}
func Format(ui cli.Ui) string {
switch ui.(type) {
case *WatchtowerUI:
return ui.(*WatchtowerUI).format
}
format := os.Getenv(base.EnvWatchtowerCLIFormat)
if format == "" {
format = "table"
}
return format
}