Sync secrets (SSL certificates) on events
Remove scheduled check for missing secrets.
This commit is contained in:
parent
8855460817
commit
fec3ddc6cc
9 changed files with 395 additions and 209 deletions
|
|
@ -40,7 +40,6 @@ import (
|
|||
"k8s.io/ingress-nginx/internal/ingress/annotations/proxy"
|
||||
ngx_config "k8s.io/ingress-nginx/internal/ingress/controller/config"
|
||||
"k8s.io/ingress-nginx/internal/k8s"
|
||||
"k8s.io/ingress-nginx/internal/task"
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
@ -114,21 +113,13 @@ func (n NGINXController) GetPublishService() *apiv1.Service {
|
|||
// sync collects all the pieces required to assemble the configuration file and
|
||||
// then sends the content to the backend (OnUpdate) receiving the populated
|
||||
// template as response reloading the backend if is required.
|
||||
func (n *NGINXController) syncIngress(item interface{}) error {
|
||||
func (n *NGINXController) syncIngress(interface{}) error {
|
||||
n.syncRateLimiter.Accept()
|
||||
|
||||
if n.syncQueue.IsShuttingDown() {
|
||||
return nil
|
||||
}
|
||||
|
||||
if element, ok := item.(task.Element); ok {
|
||||
if name, ok := element.Key.(string); ok {
|
||||
if ing, err := n.store.GetIngress(name); err == nil {
|
||||
n.store.ReadSecrets(ing)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Sort ingress rules using the ResourceVersion field
|
||||
ings := n.store.ListIngresses()
|
||||
sort.SliceStable(ings, func(i, j int) bool {
|
||||
|
|
@ -869,7 +860,7 @@ func (n *NGINXController) createServers(data []*extensions.Ingress,
|
|||
|
||||
// Tries to fetch the default Certificate from nginx configuration.
|
||||
// If it does not exists, use the ones generated on Start()
|
||||
defaultCertificate, err := n.store.GetLocalSecret(n.cfg.DefaultSSLCertificate)
|
||||
defaultCertificate, err := n.store.GetLocalSSLCert(n.cfg.DefaultSSLCertificate)
|
||||
if err == nil {
|
||||
defaultPemFileName = defaultCertificate.PemFileName
|
||||
defaultPemSHA = defaultCertificate.PemSHA
|
||||
|
|
@ -1039,7 +1030,7 @@ func (n *NGINXController) createServers(data []*extensions.Ingress,
|
|||
}
|
||||
|
||||
key := fmt.Sprintf("%v/%v", ing.Namespace, tlsSecretName)
|
||||
cert, err := n.store.GetLocalSecret(key)
|
||||
cert, err := n.store.GetLocalSSLCert(key)
|
||||
if err != nil {
|
||||
glog.Warningf("ssl certificate \"%v\" does not exist in local store", key)
|
||||
continue
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue