ignore already exists error (#2043)

This commit is contained in:
Dominic Wong
2020-10-14 11:32:35 +01:00
committed by GitHub
parent 1a962e46fd
commit c49fef49b8

View File

@@ -35,7 +35,7 @@ func (k *kubernetes) ensureNamepaceExists(ns string) error {
return nil return nil
} }
// namespaceExists returns a boolean indicating if a namespace exists // namespaceExists returns a boolean indicating if a namespace exists in the cache
func (k *kubernetes) namespaceExists(name string) (bool, error) { func (k *kubernetes) namespaceExists(name string) (bool, error) {
// populate the cache // populate the cache
if k.namespaces == nil { if k.namespaces == nil {
@@ -50,7 +50,7 @@ func (k *kubernetes) namespaceExists(name string) (bool, error) {
} }
if logger.V(logger.DebugLevel, logger.DefaultLogger) { if logger.V(logger.DebugLevel, logger.DefaultLogger) {
logger.Debugf("Popualted namespace cache successfully with %v items", len(namespaceList.Items)) logger.Debugf("Populated namespace cache successfully with %v items", len(namespaceList.Items))
} }
k.namespaces = namespaceList.Items k.namespaces = namespaceList.Items
} }
@@ -83,7 +83,12 @@ func (k *kubernetes) autoCreateNamespace(namespace string) error {
if networkPolicy, err := runtime.NewNetworkPolicy("ingress", namespace, map[string]string{"owner": "micro"}); err != nil { if networkPolicy, err := runtime.NewNetworkPolicy("ingress", namespace, map[string]string{"owner": "micro"}); err != nil {
return err return err
} else { } else {
return k.create(networkPolicy) err := k.create(networkPolicy)
if err != nil && strings.Contains(err.Error(), "already exists") {
logger.Debugf("Ignoring ErrAlreadyExists for network policy %v in namespace %v: %v", networkPolicy.Name, networkPolicy.Namespace, err)
err = nil
}
return err
} }
} }