Skip to content

Commit

Permalink
[Misc] Operator: Duplicate DNSNames handled
Browse files Browse the repository at this point in the history
There seems to be cases when mulitple apps use the same secondary domain.
Don't add multiple DNSNames to the certificate in such cases.

Change-Id: Ieefb04d66b54f2ad23c6ae940f11fcbfe72dad26
  • Loading branch information
Pavan-SAP committed Aug 29, 2023
1 parent 159ace0 commit c2e5e82
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion internal/controller/reconcile-domains.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import (
certv1alpha1 "github.com/gardener/cert-management/pkg/apis/cert/v1alpha1"
dnsv1alpha1 "github.com/gardener/external-dns-management/pkg/apis/dns/v1alpha1"
"github.com/sap/cap-operator/pkg/apis/sme.sap.com/v1alpha1"
"golang.org/x/exp/slices"
"google.golang.org/protobuf/types/known/durationpb"
networkingv1beta1 "istio.io/api/networking/v1beta1"
istionwv1beta1 "istio.io/client-go/pkg/apis/networking/v1beta1"
Expand Down Expand Up @@ -1259,7 +1260,10 @@ func (c *Controller) cleanUpOperatorDomains(ctx context.Context, relevantDomainI
func getCertificateDNSNames(relevantDomainInfo *operatorDomainInfo) []string {
dnsNames := []string{}
for _, domain := range relevantDomainInfo.Domains {
dnsNames = append(dnsNames, "*."+domain)
// Don't add duplicate DNSNames when multiple apps provide same secondary domain!
if !slices.ContainsFunc(dnsNames, func(dnsName string) bool { return dnsName == "*."+domain }) {
dnsNames = append(dnsNames, "*."+domain)
}
}
return dnsNames
}
Expand Down

0 comments on commit c2e5e82

Please sign in to comment.