diff --git a/config.go b/config.go index 78cd0e9..8c2c179 100644 --- a/config.go +++ b/config.go @@ -4,7 +4,10 @@ package main -import "errors" +import ( + "errors" + "strings" +) // The config file type ConfigFile struct { @@ -25,6 +28,10 @@ func (c *ConfigFile) Init() { } } +func (c *ConfigFile) WasProvidedUserAndPassword() bool { + return len(strings.TrimSpace(c.User)) > 0 && len(strings.TrimSpace(c.Password)) > 0 +} + // Returns an App with by appID func (c *ConfigFile) GetAppByAppID(appID string) (*App, error) { for _, app := range c.Apps { diff --git a/router.go b/router.go index b80ca91..ca2d35f 100644 --- a/router.go +++ b/router.go @@ -8,7 +8,6 @@ import ( _ "expvar" "net/http" "os" - "strings" "github.com/goji/httpauth" "github.com/gorilla/handlers" @@ -21,8 +20,8 @@ func NewRouter() *mux.Router { router := mux.NewRouter().StrictSlash(true) if Conf.Expvar { - if len(strings.TrimSpace(Conf.User)) == 0 || len(strings.TrimSpace(Conf.Password)) == 0 { - panic("Your are exporting debug variables and you are not defining an User and a Password") + if !Conf.WasProvidedUserAndPassword() { + panic("Your are exporting debug variables and looks like you forget to define an User and a Password") } router.Handle("/debug/vars", httpauth.SimpleBasicAuth(Conf.User, Conf.Password)(http.DefaultServeMux))