Lint k8s middleware

This commit is contained in:
Manuel de Brito Fontes 2016-09-23 11:08:23 -03:00
parent 7c105ee037
commit 1810e21b9a

View file

@ -50,13 +50,10 @@ func setup(c *caddy.Controller) error {
return nil
}
func kubernetesParse(c *caddy.Controller) (Kubernetes, error) {
var err error
template := defaultNameTemplate
k8s := Kubernetes{ResyncPeriod: defaultResyncPeriod}
func kubernetesParse(c *caddy.Controller) (*Kubernetes, error) {
k8s := &Kubernetes{ResyncPeriod: defaultResyncPeriod}
k8s.NameTemplate = new(nametemplate.NameTemplate)
k8s.NameTemplate.SetTemplate(template)
k8s.NameTemplate.SetTemplate(defaultNameTemplate)
for c.Next() {
if c.Val() == "kubernetes" {
@ -71,8 +68,7 @@ func kubernetesParse(c *caddy.Controller) (Kubernetes, error) {
middleware.Zones(k8s.Zones).Normalize()
if k8s.Zones == nil || len(k8s.Zones) < 1 {
err = errors.New("Zone name must be provided for kubernetes middleware.")
return Kubernetes{}, err
return nil, errors.New("Zone name must be provided for kubernetes middleware.")
}
for c.NextBlock() {
@ -81,57 +77,56 @@ func kubernetesParse(c *caddy.Controller) (Kubernetes, error) {
args := c.RemainingArgs()
if len(args) != 0 {
template := strings.Join(args, "")
err = k8s.NameTemplate.SetTemplate(template)
err := k8s.NameTemplate.SetTemplate(template)
if err != nil {
return Kubernetes{}, err
return nil, err
}
} else {
return Kubernetes{}, c.ArgErr()
continue
}
return nil, c.ArgErr()
case "namespaces":
args := c.RemainingArgs()
if len(args) != 0 {
k8s.Namespaces = append(k8s.Namespaces, args...)
} else {
return Kubernetes{}, c.ArgErr()
continue
}
return nil, c.ArgErr()
case "endpoint":
args := c.RemainingArgs()
if len(args) != 0 {
k8s.APIEndpoint = args[0]
} else {
return Kubernetes{}, c.ArgErr()
continue
}
return nil, c.ArgErr()
case "resyncperiod":
args := c.RemainingArgs()
if len(args) != 0 {
k8s.ResyncPeriod, err = time.ParseDuration(args[0])
rp, err := time.ParseDuration(args[0])
if err != nil {
err = fmt.Errorf("Unable to parse resync duration value. Value provided was '%v'. Example valid values: '15s', '5m', '1h'. Error was: %v", args[0], err)
return Kubernetes{}, err
return nil, fmt.Errorf("Unable to parse resync duration value. Value provided was '%v'. Example valid values: '15s', '5m', '1h'. Error was: %v", args[0], err)
}
} else {
return Kubernetes{}, c.ArgErr()
k8s.ResyncPeriod = rp
continue
}
return nil, c.ArgErr()
case "labels":
args := c.RemainingArgs()
if len(args) != 0 {
labelSelectorString := strings.Join(args, " ")
k8s.LabelSelector, err = unversionedapi.ParseToLabelSelector(labelSelectorString)
ls, err := unversionedapi.ParseToLabelSelector(labelSelectorString)
if err != nil {
err = fmt.Errorf("Unable to parse label selector. Value provided was '%v'. Error was: %v", labelSelectorString, err)
return Kubernetes{}, err
return nil, fmt.Errorf("Unable to parse label selector. Value provided was '%v'. Error was: %v", labelSelectorString, err)
}
} else {
return Kubernetes{}, c.ArgErr()
k8s.LabelSelector = ls
continue
}
return nil, c.ArgErr()
}
}
return k8s, nil
}
}
err = errors.New("Kubernetes setup called without keyword 'kubernetes' in Corefile")
return Kubernetes{}, err
return nil, errors.New("Kubernetes setup called without keyword 'kubernetes' in Corefile")
}
const (