mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-02 08:17:26 +00:00
Merge pull request #65477 from pusher/fix-client-ca-hook
Minimize writes to the client CA ConfigMap during API server start up
This commit is contained in:
commit
7c17beb639
@ -19,6 +19,7 @@ package master
|
|||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"reflect"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||||
@ -131,7 +132,9 @@ func writeConfigMap(client coreclient.ConfigMapsGetter, name string, data map[st
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !reflect.DeepEqual(existing.Data, data) {
|
||||||
existing.Data = data
|
existing.Data = data
|
||||||
_, err = client.ConfigMaps(metav1.NamespaceSystem).Update(existing)
|
_, err = client.ConfigMaps(metav1.NamespaceSystem).Update(existing)
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -186,6 +186,30 @@ func TestWriteClientCAs(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "skip on no change",
|
||||||
|
hook: ClientCARegistrationHook{
|
||||||
|
RequestHeaderUsernameHeaders: []string{},
|
||||||
|
RequestHeaderGroupHeaders: []string{},
|
||||||
|
RequestHeaderExtraHeaderPrefixes: []string{},
|
||||||
|
RequestHeaderCA: []byte("bar"),
|
||||||
|
RequestHeaderAllowedNames: []string{},
|
||||||
|
},
|
||||||
|
preexistingObjs: []runtime.Object{
|
||||||
|
&api.ConfigMap{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{Namespace: metav1.NamespaceSystem, Name: "extension-apiserver-authentication"},
|
||||||
|
Data: map[string]string{
|
||||||
|
"requestheader-username-headers": `[]`,
|
||||||
|
"requestheader-group-headers": `[]`,
|
||||||
|
"requestheader-extra-headers-prefix": `[]`,
|
||||||
|
"requestheader-client-ca-file": "bar",
|
||||||
|
"requestheader-allowed-names": `[]`,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
expectedConfigMaps: map[string]*api.ConfigMap{},
|
||||||
|
expectUpdate: false,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
|
Loading…
Reference in New Issue
Block a user