Surpport snippet for server section by the annotation of the ingess

This commit is contained in:
decker 2017-09-20 17:35:16 +08:00
parent 37bd14dcd2
commit 407d8535da
6 changed files with 137 additions and 0 deletions

View file

@ -1065,6 +1065,28 @@ func (ic *GenericController) createServers(data []interface{},
servers[host].Alias = ""
}
}
// configure server snippet
for _, ingIf := range data {
ing := ingIf.(*extensions.Ingress)
if !class.IsValid(ing, ic.cfg.IngressClass, ic.cfg.DefaultIngressClass) {
continue
}
for _, rule := range ing.Spec.Rules {
host := rule.Host
if host == "" {
host = defServerName
}
srvsnippet := ic.annotations.ServerSnippet(ing)
// only add a server snippet if the server does not have one previously configured
if servers[host].ServerSnippet == "" && srvsnippet != "" {
servers[host].ServerSnippet = srvsnippet
}
}
}
return servers
}