Merge pull request #4845 from shafeeqes/fix/kubeconfig

Fix a bug in admission-controller while using an external kubeconfig
This commit is contained in:
Kubernetes Prow Robot 2022-06-27 06:46:59 -07:00 committed by GitHub
commit 3a301dbcbd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 18 deletions

View File

@ -24,7 +24,6 @@ import (
admissionregistration "k8s.io/api/admissionregistration/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
"k8s.io/klog/v2"
)
@ -32,20 +31,7 @@ const (
webhookConfigName = "vpa-webhook-config"
)
// get a clientset with in-cluster config.
func getClient() *kubernetes.Clientset {
config, err := rest.InClusterConfig()
if err != nil {
klog.Fatal(err)
}
clientset, err := kubernetes.NewForConfig(config)
if err != nil {
klog.Fatal(err)
}
return clientset
}
func configTLS(clientset *kubernetes.Clientset, serverCert, serverKey []byte) *tls.Config {
func configTLS(serverCert, serverKey []byte) *tls.Config {
sCert, err := tls.X509KeyPair(serverCert, serverKey)
if err != nil {
klog.Fatal(err)

View File

@ -123,15 +123,14 @@ func main() {
as.Serve(w, r)
healthCheck.UpdateLastActivity()
})
clientset := getClient()
server := &http.Server{
Addr: fmt.Sprintf(":%d", *port),
TLSConfig: configTLS(clientset, certs.serverCert, certs.serverKey),
TLSConfig: configTLS(certs.serverCert, certs.serverKey),
}
url := fmt.Sprintf("%v:%v", *webhookAddress, *webhookPort)
go func() {
if *registerWebhook {
selfRegistration(clientset, certs.caCert, namespace, *serviceName, url, *registerByURL, int32(*webhookTimeout))
selfRegistration(kubeClient, certs.caCert, namespace, *serviceName, url, *registerByURL, int32(*webhookTimeout))
}
// Start status updates after the webhook is initialized.
statusUpdater.Run(stopCh)