Skip to content

feat(source): add min-ttl support#5641

Merged
k8s-ci-robot merged 20 commits intokubernetes-sigs:masterfrom
gofogo:feat-default-ttl
Sep 10, 2025
Merged

feat(source): add min-ttl support#5641
k8s-ci-robot merged 20 commits intokubernetes-sigs:masterfrom
gofogo:feat-default-ttl

Conversation

@ivankatliarchuk
Copy link
Copy Markdown
Member

@ivankatliarchuk ivankatliarchuk commented Jul 11, 2025

What does it do ?

  • Found an elegant way to modify TTL with source wrapper
  • Added documentation

Motivation

Fixes #1829

More

  • Yes, this PR title follows Conventional Commits
  • Yes, I added unit tests
  • Yes, I updated end user documentation accordingly

Tested on real cluster

Manifest

---
apiVersion: v1
kind: Namespace
metadata:
  name: extdns
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-v1
  namespace: extdns
  annotations:
    dns.company.com/label: controllertest-v1
    external-dns.alpha.kubernetes.io/internal-hostname: nginx-v1.local.tld
spec:
  type: ClusterIP
  ports:
    - port: 80
      name: http
      targetPort: 80
  selector:
    app: nginx
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-v2
  namespace: extdns
  annotations:
    dns.company.com/label: controllertest-v2
    dns.issue/type: issue-5634
    external-dns.alpha.kubernetes.io/ttl: "1m"
    external-dns.alpha.kubernetes.io/internal-hostname: nginx-v2i.local.tld
spec:
  type: ClusterIP
  ports:
    - port: 80
      name: http
      targetPort: 80
  selector:
    app: nginx
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-v3
  namespace: extdns
  annotations:
    dns.company.com/label: controllertest-v2
    dns.issue/type: issue-5634
    # external-dns.alpha.kubernetes.io/ttl: "180"
    external-dns.alpha.kubernetes.io/internal-hostname: nginx-v3.local.tld
spec:
  type: ClusterIP
  ports:
    - port: 80
      name: http
      targetPort: 80
  selector:
    app: nginx
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  namespace: extdns
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - image: nginx
          name: nginx
          ports:
            - containerPort: 80
              name: http
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-v4
  namespace: extdns
  annotations:
    dns.company.com/label: controllertest-v2
    dns.issue/type: issue-5634
    # external-dns.alpha.kubernetes.io/ttl: "180"
    external-dns.alpha.kubernetes.io/internal-hostname: nginx-v4.local.tld
spec:
  type: ClusterIP
  ports:
    - port: 80
      name: http
      targetPort: 80
  selector:
    app: nginx

arguments

go run main.go \
    --provider=aws \
    --registry=txt \
    --source=service \
    --log-level=debug \
    --zone-name-filter=local.tld

results (sets to provider deafult)
Screenshot 2025-07-11 at 13 47 35

arguments

go run main.go \
    --provider=aws \
    --registry=txt \
    --source=service \
    --log-level=debug \
    --zone-name-filter=local.tld \
    --min-ttl=1m15s

results

Screenshot 2025-07-11 at 14 01 21 Screenshot 2025-07-11 at 13 48 12

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@k8s-ci-robot k8s-ci-robot requested a review from mloiseleur July 11, 2025 13:41
@k8s-ci-robot k8s-ci-robot added the apis Issues or PRs related to API change label Jul 11, 2025
@k8s-ci-robot k8s-ci-robot requested a review from szuecs July 11, 2025 13:41
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. controller Issues or PRs related to the controller docs source size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Jul 11, 2025
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@ivankatliarchuk
Copy link
Copy Markdown
Member Author

Hi @jhemtjpr I'd appreciate it if you could review this and assess where the solution makes sense. If you familiar with Go, you could give it a try as well how to test a PR ?. This will require golang to be installed.

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@jhemtjpr
Copy link
Copy Markdown

Hi @jhemtjpr I'd appreciate it if you could review this and assess where the solution makes sense. If you familiar with Go, you could give it a try as well how to test a PR ?. This will require golang to be installed.

I am not well versed into running or testing Go applications, but the detailed explanation and the code is clear and easy to read.

minTTL: [...] This value will be used if the TTL for a source is not set.

This definitely covers the use case I need, allowing the annotation to take precedence over minTTL. That's perfect.

Thank you for the effort!

@mloiseleur mloiseleur changed the title feat(source/min-ttl): added min-ttl support feat(source): add min-ttl support Jul 11, 2025
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
Copy link
Copy Markdown
Collaborator

@mloiseleur mloiseleur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm
/assign @szuecs for final review

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 11, 2025
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 11, 2025
@ivankatliarchuk
Copy link
Copy Markdown
Member Author

ivankatliarchuk commented Jul 11, 2025

i'll put on hold to prevent accidental merge

/hold

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 11, 2025
@ivankatliarchuk ivankatliarchuk marked this pull request as draft July 27, 2025 08:32
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 27, 2025
@ivankatliarchuk
Copy link
Copy Markdown
Member Author

To only merge after #5687

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 20, 2025
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 21, 2025
* master:
  fix(doc): typo in compatibility table (kubernetes-sigs#5769)
  fix(controller): panic in events.Controller.Add() (kubernetes-sigs#5766)
  chore(cloudflare): rename zoneService fields (kubernetes-sigs#5761)
  chore(deps): bump the dev-dependencies group with 9 updates (kubernetes-sigs#5763)
  fix(http): concurrent map read/write (kubernetes-sigs#5753)
  chore(deps): bump the dev-dependencies group across 1 directory with 10 updates (kubernetes-sigs#5760)
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@ivankatliarchuk
Copy link
Copy Markdown
Member Author

/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 1, 2025
Copy link
Copy Markdown
Collaborator

@mloiseleur mloiseleur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ivankatliarchuk LGTM. Just left a last suggestion on CLI help message, to make it more aligned with documentation.

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Sep 8, 2025
ivankatliarchuk and others added 3 commits September 8, 2025 19:44
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Sep 9, 2025
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
ivankatliarchuk and others added 2 commits September 9, 2025 09:41
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
@mloiseleur
Copy link
Copy Markdown
Collaborator

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Sep 10, 2025
@ivankatliarchuk
Copy link
Copy Markdown
Member Author

/approve

@k8s-ci-robot
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ivankatliarchuk

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 10, 2025
@ivankatliarchuk
Copy link
Copy Markdown
Member Author

/test pull-external-dns-unit-test

@k8s-ci-robot k8s-ci-robot merged commit 7792e78 into kubernetes-sigs:master Sep 10, 2025
14 checks passed
@ivankatliarchuk ivankatliarchuk deleted the feat-default-ttl branch September 11, 2025 20:18
JesusMtnez pushed a commit to JesusMtnez/homelab that referenced this pull request Dec 1, 2025
…o v0.20.0 (#869)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [registry.k8s.io/external-dns/external-dns](https://github.com/kubernetes-sigs/external-dns) | minor | `v0.19.0` -> `v0.20.0` |

---

### Release Notes

<details>
<summary>kubernetes-sigs/external-dns (registry.k8s.io/external-dns/external-dns)</summary>

### [`v0.20.0`](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.20.0)

[Compare Source](kubernetes-sigs/external-dns@v0.19.0...v0.20.0)

#### 🚀 Features

- feat: add new flags to allow migration of OwnerID by [@&#8203;troll-os](https://github.com/troll-os) in [#&#8203;4823](kubernetes-sigs/external-dns#4823)
- feat(annotations): add custom annotation prefix support for split horizon DNS by [@&#8203;lexfrei](https://github.com/lexfrei) in [#&#8203;5889](kubernetes-sigs/external-dns#5889)
- feat(aws): add ap-southeast-6 region by [@&#8203;rhysmdnz](https://github.com/rhysmdnz) in [#&#8203;5812](kubernetes-sigs/external-dns#5812)
- feat(chart): Release for v0.19.0 by [@&#8203;stevehipwell](https://github.com/stevehipwell) in [#&#8203;5819](kubernetes-sigs/external-dns#5819)
- feat(cli): add Cobra binder and backend switch by [@&#8203;TobyTheHutt](https://github.com/TobyTheHutt) in [#&#8203;5820](kubernetes-sigs/external-dns#5820)
- feat(cli): migrate kingpin to cobra - dual parity by [@&#8203;TobyTheHutt](https://github.com/TobyTheHutt) in [#&#8203;5836](kubernetes-sigs/external-dns#5836)
- feat(coredns): add annotations for groups by [@&#8203;farodin91](https://github.com/farodin91) in [#&#8203;5842](kubernetes-sigs/external-dns#5842)
- feat(coredns): pass context to etcd client by [@&#8203;farodin91](https://github.com/farodin91) in [#&#8203;5915](kubernetes-sigs/external-dns#5915)
- feat(provider/cloudflare): add support for tags by [@&#8203;nkhl99](https://github.com/nkhl99) in [#&#8203;5862](kubernetes-sigs/external-dns#5862)
- feat(source): add min-ttl support by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5641](kubernetes-sigs/external-dns#5641)
- feat(source/f5-virtual-server): add host aliases support for Virtual … by [@&#8203;shkarface](https://github.com/shkarface) in [#&#8203;5745](kubernetes-sigs/external-dns#5745)

#### 🐛 Bug fixes

- fix(cloudflare): infinite reconciliation loop with cloudflare-record-comment flag by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5828](kubernetes-sigs/external-dns#5828)
- fix: cloudflare softError failedZones by [@&#8203;nissessenap](https://github.com/nissessenap) in [#&#8203;5899](kubernetes-sigs/external-dns#5899)
- fix(controller): panic in OCI provider build by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5877](kubernetes-sigs/external-dns#5877)
- fix(coredns): debug message on labels update by [@&#8203;bachorp](https://github.com/bachorp) in [#&#8203;5789](kubernetes-sigs/external-dns#5789)
- fix(deps): bump openshift with gateway-api by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5942](kubernetes-sigs/external-dns#5942)
- fix(endpoint): debug message when owner label is missing by [@&#8203;bachorp](https://github.com/bachorp) in [#&#8203;5788](kubernetes-sigs/external-dns#5788)
- fix(endpoint): deduplicate targets by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5805](kubernetes-sigs/external-dns#5805)
- fix(endpoint/source) Allow '.' in TXT Records by [@&#8203;onelapahead](https://github.com/onelapahead) in [#&#8203;5844](kubernetes-sigs/external-dns#5844)
- fix(gen/metrics): deduplicate generated in metrics.md by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5837](kubernetes-sigs/external-dns#5837)
- fix(service): rollback nodeinformer for addevent handler by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5941](kubernetes-sigs/external-dns#5941)
- fix(txt-register): reset existingTXTs even when ApplyChanges is skipped to avoid stale TXT records by [@&#8203;u-kai](https://github.com/u-kai) in [#&#8203;5897](kubernetes-sigs/external-dns#5897)

#### 📝 Documentation

- docs(advanced): configuration precedence by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5871](kubernetes-sigs/external-dns#5871)
- docs(aws): add missing supported DNS record types in Route53 ABAC  by [@&#8203;TobyTheHutt](https://github.com/TobyTheHutt) in [#&#8203;5839](kubernetes-sigs/external-dns#5839)
- docs(aws): scoping the IAM policy to explicitely defined Route53 zones by [@&#8203;crtr109](https://github.com/crtr109) in [#&#8203;5663](kubernetes-sigs/external-dns#5663)
- docs(ci): improve release note template by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5791](kubernetes-sigs/external-dns#5791)
- docs: clarify hostname annotation behavior by [@&#8203;PseudoResonance](https://github.com/PseudoResonance) in [#&#8203;5912](kubernetes-sigs/external-dns#5912)
- docs(contributing): add reference to developer documentation by [@&#8203;lexfrei](https://github.com/lexfrei) in [#&#8203;5923](kubernetes-sigs/external-dns#5923)
- docs(core-dns): update tutorial by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5926](kubernetes-sigs/external-dns#5926)
- docs: fix mkdocs build by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5795](kubernetes-sigs/external-dns#5795)
- docs(gateway-api): clarify annotation placement for sources by [@&#8203;lexfrei](https://github.com/lexfrei) in [#&#8203;5918](kubernetes-sigs/external-dns#5918)
- docs(myra): add info about protection option and docker image by [@&#8203;armaaar](https://github.com/armaaar) in [#&#8203;5879](kubernetes-sigs/external-dns#5879)
- docs(release): update release docs by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5893](kubernetes-sigs/external-dns#5893)
- docs(tutorials): import existing DNS records into ExternalDNS by [@&#8203;naavveenn](https://github.com/naavveenn) in [#&#8203;5811](kubernetes-sigs/external-dns#5811)
- docs(txt-registry): improve formatting and examples for apex record by [@&#8203;u-kai](https://github.com/u-kai) in [#&#8203;5863](kubernetes-sigs/external-dns#5863)
- docs(webhook): add volcengine provider to readme by [@&#8203;firemiles](https://github.com/firemiles) in [#&#8203;5866](kubernetes-sigs/external-dns#5866)

#### 📦 Others

- Build(tool) remove vacuum by [@&#8203;szuecs](https://github.com/szuecs) in [#&#8203;5955](kubernetes-sigs/external-dns#5955)
- chore(ci): fix releaser script by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5953](kubernetes-sigs/external-dns#5953)
- chore(ci): speed-up & coveralls by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5870](kubernetes-sigs/external-dns#5870)
- chore(cloudflare): migrate `DeleteCustomHostname()` to new lib by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5880](kubernetes-sigs/external-dns#5880)
- chore(cloudflare): migrate DeleteDNSRecord() to new lib by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5780](kubernetes-sigs/external-dns#5780)
- chore(cloudflare): migrate ListRecords() to new lib by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5778](kubernetes-sigs/external-dns#5778)
- chore(cloudflare): migrate UpdateDNSRecord() to new lib by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5781](kubernetes-sigs/external-dns#5781)
- chore(controller-gen): move tools under go tools by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5878](kubernetes-sigs/external-dns#5878)
- chore(deps): bump renovatebot/github-action from 43.0.10 to 43.0.11 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5823](kubernetes-sigs/external-dns#5823)
- chore(deps): bump renovatebot/github-action from 43.0.11 to 43.0.12 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5840](kubernetes-sigs/external-dns#5840)
- chore(deps): bump renovatebot/github-action from 43.0.12 to 43.0.13 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5856](kubernetes-sigs/external-dns#5856)
- chore(deps): bump renovatebot/github-action from 43.0.13 to 43.0.14 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5874](kubernetes-sigs/external-dns#5874)
- chore(deps): bump renovatebot/github-action from 43.0.14 to 43.0.15 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5890](kubernetes-sigs/external-dns#5890)
- chore(deps): bump renovatebot/github-action from 43.0.9 to 43.0.10 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5797](kubernetes-sigs/external-dns#5797)
- chore(deps): bump the dev-dependencies group across 1 directory with 15 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5952](kubernetes-sigs/external-dns#5952)
- chore(deps): bump the dev-dependencies group across 1 directory with 36 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5943](kubernetes-sigs/external-dns#5943)
- chore(deps): bump the dev-dependencies group across 1 directory with 5 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5940](kubernetes-sigs/external-dns#5940)
- chore(deps): bump the dev-dependencies group across 1 directory with 9 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5949](kubernetes-sigs/external-dns#5949)
- chore(deps): bump the dev-dependencies group with 2 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5895](kubernetes-sigs/external-dns#5895)
- chore(deps): bump the dev-dependencies group with 2 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5946](kubernetes-sigs/external-dns#5946)
- chore(deps): bump the dev-dependencies group with 3 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5806](kubernetes-sigs/external-dns#5806)
- chore(lint): configure goconst linter by [@&#8203;lexfrei](https://github.com/lexfrei) in [#&#8203;5929](kubernetes-sigs/external-dns#5929)
- chore(owners): update reviewers by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5925](kubernetes-sigs/external-dns#5925)
- chore(pihole): reduce cyclometic complexity of TestListRecords by [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay) in [#&#8203;5802](kubernetes-sigs/external-dns#5802)
- chore(release): updates kustomize & docs with v0.19.0 by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5792](kubernetes-sigs/external-dns#5792)
- chore: upgrade ExternalDNS to go v1.25 and golangci-lint v2.5 by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5869](kubernetes-sigs/external-dns#5869)
- ci(linter): add gochecknoinits by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5911](kubernetes-sigs/external-dns#5911)
- ci(linter): add go-critic by [@&#8203;PascalBourdier](https://github.com/PascalBourdier) in [#&#8203;5875](kubernetes-sigs/external-dns#5875)
- doc(tutorials/rfc2136): fix RBAC by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5827](kubernetes-sigs/external-dns#5827)
- refactor(annotations): modernize ProviderSpecificAnnotation by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5813](kubernetes-sigs/external-dns#5813)
- refactor(pihole): reduce cyclomatic complexity of TestProvider by [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay) in [#&#8203;5865](kubernetes-sigs/external-dns#5865)
- refactor(pihole): reduce cyclomatic complexity of TestProviderV6 by [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay) in [#&#8203;5876](kubernetes-sigs/external-dns#5876)
- refactor(service): reduce cyclomatic complexity of extractHeadlessEndpoints by [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay) in [#&#8203;5822](kubernetes-sigs/external-dns#5822)
- refactor(source/nat64): optional source & early prefixes parsing by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5810](kubernetes-sigs/external-dns#5810)
- refactor(source/wrappers): move wrappers logic away from execute file by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5888](kubernetes-sigs/external-dns#5888)
- test(cloudflare): clear environment variables before setting test values by [@&#8203;u-kai](https://github.com/u-kai) in [#&#8203;5851](kubernetes-sigs/external-dns#5851)
- test(cloudflare): improve coverage of zoneService by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5800](kubernetes-sigs/external-dns#5800)
- test(cloudflare): mock provider for cf change tests by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5852](kubernetes-sigs/external-dns#5852)
- test(cloudflare): modernize zoneDomainFilter test by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5853](kubernetes-sigs/external-dns#5853)
- test(controller): improve code coverage by [@&#8203;TobyTheHutt](https://github.com/TobyTheHutt) in [#&#8203;5816](kubernetes-sigs/external-dns#5816)
- test(source): fqdn for source/service/nodeport/srv records by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5554](kubernetes-sigs/external-dns#5554)
- test(source/service): add serviceTypeFilter edge case by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5872](kubernetes-sigs/external-dns#5872)
- test(source/wrappers): fix race condition by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5841](kubernetes-sigs/external-dns#5841)
- test: update goversion label to 1.25 in metrics test by [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay) in [#&#8203;5886](kubernetes-sigs/external-dns#5886)
- update test certs used for pdns by [@&#8203;Raffo](https://github.com/Raffo) in [#&#8203;5902](kubernetes-sigs/external-dns#5902)

#### 📦 Docker Image

```sh
docker pull registry.k8s.io/external-dns/external-dns:v0.20.0
```

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xMS4wIiwidXBkYXRlZEluVmVyIjoiNDIuMTEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwL21pbm9yIl19-->

Reviewed-on: https://codeberg.org/JesusMtnez/homelab/pulls/869
Co-authored-by: JesusMtnez-bot <jesusmartinez93+bot@gmail.com>
Co-committed-by: JesusMtnez-bot <jesusmartinez93+bot@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

apis Issues or PRs related to API change approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. controller Issues or PRs related to the controller docs lgtm "Looks good to me", indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. source

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow global configuration of TTL

4 participants