• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kubernetes-sigs / external-dns / 32123589441
82%

Build:
DEFAULT BRANCH: master
Ran 18 Aug 2026 09:52AM UTC
Jobs 2
Files 159
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Aug 2026 09:49AM UTC coverage: 81.847% (+0.005%) from 81.842%
32123589441

push

github

web-flow
fix(source): parse gloo-proxy aggregateListener virtual hosts (#6628)

Motivation:
The gloo-proxy source only parsed Proxy.spec.listeners[].httpListener.
virtualHosts[]. When a Gloo Edge Gateway has isolateVirtualHostsBySslConfig:
true (Gloo Edge 1.22.0+), Gloo emits aggregateListener instead of
httpListener for that listener. Since proxySpecListener had no
AggregateListener field, JSON unmarshalling silently dropped that part of
the object, listener.HTTPListener.VirtualHosts stayed empty, and
generateEndpointsFromProxy produced zero endpoints for the listener with no
error or warning logged. DNS records silently stopped being created/updated
for any VirtualService domain served by an aggregateListener-backed
listener, even though the Proxy CR was valid and Envoy was serving the
domain correctly.

Approach:
Add proxySpecAggregateListener/proxyAggregateListenerHTTPFilterChain/
proxyAggregateListenerHTTPResources types mirroring the aggregateListener
JSON shape (httpFilterChains[].virtualHostRefs referencing entries in
httpResources.virtualHosts, a map keyed by virtual host name). In
generateEndpointsFromProxy, resolve each ref against that map and append
the matched virtual hosts to the ones read from httpListener, so both
listener shapes are handled uniformly by the existing endpoint-generation
loop. An unresolved ref is silently skipped, matching this file's existing
behavior for unmatched/unsupported sources elsewhere.

Validation:
- go build ./...
- go test -race ./source/... -run TestGloo (includes TestGlooSource,
  TestGlooProxyIndexer, TestGlooProxyFQDNTemplate, TestGlooSource_
  AddEventHandler) — all pass
- gofmt -l source/gloo_proxy.go source/gloo_proxy_test.go — clean
- golangci-lint run ./source/... — 22 pre-existing goconst warnings, none
  in the changed files; confirmed identical count/location on master via
  git stash, so this diff introduces no new lint issues
- Added an aggregateListener test fixture mirroring the issue's reported
  ... (continued)

17575 of 21473 relevant lines covered (81.85%)

1453.18 hits per line

Coverage Regressions

Lines Coverage ∆ File
38
77.94
0.67% gloo_proxy.go
Jobs
ID Job ID Ran Files Coverage
1 run-macos-latest - 32123589441.1 18 Aug 2026 09:54AM UTC 159
81.85
GitHub Action Run
2 run-ubuntu-latest - 32123589441.2 18 Aug 2026 09:52AM UTC 159
81.85
GitHub Action Run
Source Files on build 32123589441
  • Tree
  • List 159
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #32123589441
  • 679a4cec on github
  • Prev Build on master (#32123579373)
  • Next Build on master (#32123579373)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc