Fix bug report command

This commit is contained in:
Ludovic Fernandez 2018-01-02 10:14:03 +01:00 committed by Traefiker
parent cda09c843a
commit 718fc7a79d
2 changed files with 21 additions and 5 deletions

View file

@ -84,7 +84,7 @@ Add more configuration information here.
) )
// newBugCmd builds a new Bug command // newBugCmd builds a new Bug command
func newBugCmd(traefikConfiguration interface{}, traefikPointersConfiguration interface{}) *flaeg.Command { func newBugCmd(traefikConfiguration *TraefikConfiguration, traefikPointersConfiguration *TraefikConfiguration) *flaeg.Command {
//version Command init //version Command init
return &flaeg.Command{ return &flaeg.Command{
@ -99,7 +99,7 @@ func newBugCmd(traefikConfiguration interface{}, traefikPointersConfiguration in
} }
} }
func runBugCmd(traefikConfiguration interface{}) func() error { func runBugCmd(traefikConfiguration *TraefikConfiguration) func() error {
return func() error { return func() error {
body, err := createBugReport(traefikConfiguration) body, err := createBugReport(traefikConfiguration)
@ -113,7 +113,7 @@ func runBugCmd(traefikConfiguration interface{}) func() error {
} }
} }
func createBugReport(traefikConfiguration interface{}) (string, error) { func createBugReport(traefikConfiguration *TraefikConfiguration) (string, error) {
var version bytes.Buffer var version bytes.Buffer
if err := getVersionPrint(&version); err != nil { if err := getVersionPrint(&version); err != nil {
return "", err return "", err
@ -124,7 +124,7 @@ func createBugReport(traefikConfiguration interface{}) (string, error) {
return "", err return "", err
} }
config, err := anonymize.Do(&traefikConfiguration, true) config, err := anonymize.Do(traefikConfiguration, true)
if err != nil { if err != nil {
return "", err return "", err
} }

View file

@ -6,16 +6,27 @@ import (
"github.com/containous/traefik/cmd/traefik/anonymize" "github.com/containous/traefik/cmd/traefik/anonymize"
"github.com/containous/traefik/configuration" "github.com/containous/traefik/configuration"
"github.com/containous/traefik/provider/file" "github.com/containous/traefik/provider/file"
"github.com/containous/traefik/types"
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )
func Test_createBugReport(t *testing.T) { func Test_createBugReport(t *testing.T) {
traefikConfiguration := TraefikConfiguration{ traefikConfiguration := &TraefikConfiguration{
ConfigFile: "FOO", ConfigFile: "FOO",
GlobalConfiguration: configuration.GlobalConfiguration{ GlobalConfiguration: configuration.GlobalConfiguration{
EntryPoints: configuration.EntryPoints{ EntryPoints: configuration.EntryPoints{
"goo": &configuration.EntryPoint{ "goo": &configuration.EntryPoint{
Address: "hoo.bar", Address: "hoo.bar",
Auth: &types.Auth{
Basic: &types.Basic{
UsersFile: "foo Basic UsersFile",
Users: types.Users{"foo Basic Users 1", "foo Basic Users 2", "foo Basic Users 3"},
},
Digest: &types.Digest{
UsersFile: "foo Digest UsersFile",
Users: types.Users{"foo Digest Users 1", "foo Digest Users 2", "foo Digest Users 3"},
},
},
}, },
}, },
File: &file.Provider{ File: &file.Provider{
@ -27,6 +38,11 @@ func Test_createBugReport(t *testing.T) {
report, err := createBugReport(traefikConfiguration) report, err := createBugReport(traefikConfiguration)
assert.NoError(t, err, report) assert.NoError(t, err, report)
// exported anonymous configuration
assert.NotContains(t, "web Basic Users ", report)
assert.NotContains(t, "foo Digest Users ", report)
assert.NotContains(t, "hoo.bar", report)
} }
func Test_anonymize_traefikConfiguration(t *testing.T) { func Test_anonymize_traefikConfiguration(t *testing.T) {