From 57a2ba00a00d23ff9ab17aab5d521627788c3de4 Mon Sep 17 00:00:00 2001 From: Faisal Chaudhry <chaudhryfaisal@gmail.com> Date: Thu, 10 Jun 2021 15:58:04 -0400 Subject: [PATCH] fix custom certs csr generation to do deep compairson for etcd and compare for all nodes and not just first --- pki/services.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pki/services.go b/pki/services.go index d0e8f1b7..ab453b54 100644 --- a/pki/services.go +++ b/pki/services.go @@ -419,9 +419,12 @@ func GenerateEtcdCSRs(ctx context.Context, certs map[string]CertificatePKI, rkeC for _, host := range etcdHosts { etcdName := GetCrtNameForHost(host, EtcdCertName) etcdCrt := certs[etcdName].Certificate - etcdCSRPEM := certs[etcdName].CSRPEM - if etcdCSRPEM != "" { - return nil + etcdCsr := certs[etcdName].CSR + if etcdCsr != nil { + if reflect.DeepEqual(etcdAltNames.DNSNames, etcdCsr.DNSNames) && + DeepEqualIPsAltNames(etcdAltNames.IPs, etcdCsr.IPAddresses) { + continue + } } logrus.Infof("[certificates] Generating etcd-%s csr and key", host.InternalAddress) etcdCSR, etcdKey, err := GenerateCertSigningRequestAndKey(true, EtcdCertName, etcdAltNames, certs[etcdName].Key, nil) @@ -532,7 +535,7 @@ func GenerateKubeletCSR(ctx context.Context, certs map[string]CertificatePKI, rk if oldKubeletCSR != nil && reflect.DeepEqual(kubeletAltNames.DNSNames, oldKubeletCSR.DNSNames) && DeepEqualIPsAltNames(kubeletAltNames.IPs, oldKubeletCSR.IPAddresses) { - return nil + continue } logrus.Infof("[certificates] Generating %s Kubernetes Kubelet csr", kubeletName) kubeletCSR, kubeletKey, err := GenerateCertSigningRequestAndKey(true, kubeletName, kubeletAltNames, certs[kubeletName].Key, nil)