1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-04-08 10:04:25 +00:00

fix: use RWMutex lock while concurrent read/write (#3462)

Signed-off-by: prateekpandey14 <prateek.pandey@nirmata.com>
This commit is contained in:
Prateek Pandey 2022-03-25 10:10:34 +05:30 committed by GitHub
parent 3cf83bc77f
commit 9c064ac76d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 0 deletions

View file

@ -207,8 +207,10 @@ func (ws *WebhookServer) updateAnnotationInGR(gr *kyverno.GenerateRequest, logge
if len(grAnnotations) == 0 {
grAnnotations = make(map[string]string)
}
ws.Lock()
grAnnotations["generate.kyverno.io/updation-time"] = time.Now().String()
gr.SetAnnotations(grAnnotations)
ws.Unlock()
_, err := ws.kyvernoClient.KyvernoV1().GenerateRequests(config.KyvernoNamespace).Update(contextdefault.TODO(), gr, metav1.UpdateOptions{})
if err != nil {
logger.Error(err, "failed to update generate request for the resource", "generate request", gr.Name)

View file

@ -7,6 +7,7 @@ import (
"fmt"
"io/ioutil"
"net/http"
"sync"
"time"
"github.com/go-logr/logr"
@ -124,6 +125,8 @@ type WebhookServer struct {
grController *generate.Controller
promConfig *metrics.PromConfig
sync.RWMutex
}
// NewWebhookServer creates new instance of WebhookServer accordingly to given configuration