Skip to content

Commit fc05690

Browse files
authored
Added fix for istio gateway and vs heterogenous deployment (#6)
1 parent ceba31b commit fc05690

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

charts/external-dns/templates/deployment.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,9 @@ spec:
7373
{{- if .Values.triggerLoopOnEvent }}
7474
- --events
7575
{{- end }}
76+
{{- if .Values.awsPreferCname }}
77+
- --aws-prefer-cname
78+
{{- end }}
7679
{{- if .Values.watchNamespaces }}
7780
- --namespace={{ .Values.watchNamespaces | join "," }}
7881
{{- end }}

source/istio_virtualservice.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ func (sc *virtualServiceSource) targetsFromVirtualService(ctx context.Context, v
302302
if !virtualServiceBindsToGateway(virtualService, gateway, vsHost) {
303303
continue
304304
}
305-
tgs, err := sc.targetsFromGateway(gateway)
305+
tgs, err := sc.targetsFromGateway(ctx, gateway)
306306
if err != nil {
307307
return targets, err
308308
}
@@ -431,19 +431,20 @@ func parseGateway(gateway string) (namespace, name string, err error) {
431431
return
432432
}
433433

434-
func (sc *virtualServiceSource) targetsFromGateway(gateway *networkingv1alpha3.Gateway) (targets endpoint.Targets, err error) {
434+
func (sc *virtualServiceSource) targetsFromGateway(ctx context.Context, gateway *networkingv1alpha3.Gateway) (targets endpoint.Targets, err error) {
435435
targets = getTargetsFromTargetAnnotation(gateway.Annotations)
436436
if len(targets) > 0 {
437437
return
438438
}
439439

440-
services, err := sc.serviceInformer.Lister().Services(sc.namespace).List(labels.Everything())
440+
// Use kubeclient instead of informers to fetch services from gateway namespace
441+
services, err := sc.kubeClient.CoreV1().Services(gateway.Namespace).List(ctx, metav1.ListOptions{})
441442
if err != nil {
442443
log.Error(err)
443444
return
444445
}
445446

446-
for _, service := range services {
447+
for _, service := range services.Items {
447448
if !gatewaySelectorMatchesServiceSelector(gateway.Spec.Selector, service.Spec.Selector) {
448449
continue
449450
}

0 commit comments

Comments
 (0)