Unverified Commit aca1c2fd authored by Derek Nola's avatar Derek Nola Committed by GitHub

Add a retry around updating a secrets-encrypt node annotations (#9039)

* Add a retry around updating a se node annotations Signed-off-by: 's avatarDerek Nola <derek.nola@suse.com>
parent bbd68f3a
...@@ -23,6 +23,7 @@ import ( ...@@ -23,6 +23,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels" "k8s.io/apimachinery/pkg/labels"
apiserverconfigv1 "k8s.io/apiserver/pkg/apis/config/v1" apiserverconfigv1 "k8s.io/apiserver/pkg/apis/config/v1"
"k8s.io/client-go/util/retry"
"k8s.io/utils/pointer" "k8s.io/utils/pointer"
) )
...@@ -222,11 +223,14 @@ func encryptionPrepare(ctx context.Context, server *config.Control, force bool) ...@@ -222,11 +223,14 @@ func encryptionPrepare(ctx context.Context, server *config.Control, force bool)
return err return err
} }
nodeName := os.Getenv("NODE_NAME") nodeName := os.Getenv("NODE_NAME")
err = retry.RetryOnConflict(retry.DefaultRetry, func() error {
node, err := server.Runtime.Core.Core().V1().Node().Get(nodeName, metav1.GetOptions{}) node, err := server.Runtime.Core.Core().V1().Node().Get(nodeName, metav1.GetOptions{})
if err != nil { if err != nil {
return err return err
} }
if err = secretsencrypt.WriteEncryptionHashAnnotation(server.Runtime, node, secretsencrypt.EncryptionPrepare); err != nil { return secretsencrypt.WriteEncryptionHashAnnotation(server.Runtime, node, secretsencrypt.EncryptionPrepare)
})
if err != nil {
return err return err
} }
return cluster.Save(ctx, server, true) return cluster.Save(ctx, server, true)
...@@ -250,11 +254,14 @@ func encryptionRotate(ctx context.Context, server *config.Control, force bool) e ...@@ -250,11 +254,14 @@ func encryptionRotate(ctx context.Context, server *config.Control, force bool) e
} }
logrus.Infoln("Encryption keys right rotated") logrus.Infoln("Encryption keys right rotated")
nodeName := os.Getenv("NODE_NAME") nodeName := os.Getenv("NODE_NAME")
err = retry.RetryOnConflict(retry.DefaultRetry, func() error {
node, err := server.Runtime.Core.Core().V1().Node().Get(nodeName, metav1.GetOptions{}) node, err := server.Runtime.Core.Core().V1().Node().Get(nodeName, metav1.GetOptions{})
if err != nil { if err != nil {
return err return err
} }
if err := secretsencrypt.WriteEncryptionHashAnnotation(server.Runtime, node, secretsencrypt.EncryptionRotate); err != nil { return secretsencrypt.WriteEncryptionHashAnnotation(server.Runtime, node, secretsencrypt.EncryptionRotate)
})
if err != nil {
return err return err
} }
return cluster.Save(ctx, server, true) return cluster.Save(ctx, server, true)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment