Skip to content

Conversation

@mrozentsvayg
Copy link
Contributor

@mrozentsvayg mrozentsvayg commented Mar 15, 2025

Description

Fixes and improvements:

  • using TXT registry could cause one-time attempt to create duplicate custom hostname, crashing container (once);
  • manual deleting DNS and registry (TXT) records alone could cause the same as above;
  • refactor submitChanges() custom hostnames related code to make contributions around it easier (eg. fix(cloudflare): regional hostnames #5175);
  • fix and add unit-tests to cover all above;

There are still similar edge-cases that could cause one-time container crash. Not custom hostnames related.
Eg. manually removing or renaming A/CNAME record, but not TXT registry record would crash:

INFO[0068] Changing record.                              action=CREATE record=mih-cf-test-2.t.conduit-stg.xyz ttl=1 type=A zone=***
INFO[0068] Changing record.                              action=CREATE record=a-mih-cf-test-2.t.conduit-stg.xyz ttl=1 type=TXT zone=***
ERRO[0069] failed to create record: An identical record already exists. (81058)  action=CREATE record=a-mih-cf-test-2.t.conduit-stg.xyz ttl=1 type=TXT zone=***
FATA[0069] Failed to do run once: failed to submit all changes for the following zones: [***]
exit status 1

The one-time crashing could be intentional implementation of letting know that something has happened not quite gracefully, but not so sure about the CREATE->DELETE order on rename.

Checklist

  • Unit tests updated
  • End user documentation updated - not needed

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Mar 15, 2025
@k8s-ci-robot
Copy link
Contributor

Hi @mrozentsvayg. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Mar 15, 2025
@mloiseleur
Copy link
Collaborator

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Mar 15, 2025
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
log.WithFields(logFields).Infof("Custom hostname %v not found", change.CustomHostname.Hostname)
log.WithFields(logFields).Warnf("Custom hostname %v not found", change.CustomHostname.Hostname)

Copy link
Contributor

Choose a reason for hiding this comment

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

%v -> %q in all kind of log message please!

Copy link
Contributor Author

@mrozentsvayg mrozentsvayg Mar 16, 2025

Choose a reason for hiding this comment

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

%v -> %q in all kind of log message please!

Updated for Cloudflare provider.
There's still a logging inconsistency with the logrus's log.WithFields(), looking like:

INFO[0001] Changing record.                              action=CREATE record=mih-cf-test-2.***.xyz ttl=1 type=A zone=***
INFO[0001] Creating custom hostname "mih-test-ch-1.***"  action=CREATE record=mih-cf-test-2.*** ttl=1 type=A zone=***
INFO[0002] Changing record.                              action=CREATE record=a-mih-cf-test-2.*** ttl=1 type=TXT zone=***

If the consistent quoted output is a style policy goal, we could use log.SetFormatter(&log.TextFormatter{ForceQuote: true}), eg:

diff --git a/provider/cloudflare/cloudflare.go b/provider/cloudflare/cloudflare.go
index 37847491..e4ce8697 100644
--- a/provider/cloudflare/cloudflare.go
+++ b/provider/cloudflare/cloudflare.go
@@ -249,6 +249,7 @@ func NewCloudFlareProvider(domainFilter endpoint.DomainFilter, zoneIDFilter prov
 func (p *CloudFlareProvider) Zones(ctx context.Context) ([]cloudflare.Zone, error) {
        result := []cloudflare.Zone{}

+       log.SetFormatter(&log.TextFormatter{ForceQuote: true})
        // if there is a zoneIDfilter configured
        // && if the filter isn't just a blank string (used in tests)
        if len(p.zoneIDFilter.ZoneIDs) > 0 && p.zoneIDFilter.ZoneIDs[0] != "" {
@@ -361,6 +362,8 @@ func (p *CloudFlareProvider) ApplyChanges(ctx context.Context, changes *plan.Cha

 // submitChanges takes a zone and a collection of Changes and sends them as a single transaction.
 func (p *CloudFlareProvider) submitChanges(ctx context.Context, changes []*cloudFlareChange) error {
+       log.SetFormatter(&log.TextFormatter{ForceQuote: true})
+
        // return early if there is nothing to change
        if len(changes) == 0 {
                log.Info("All records are already up to date")
@@ -385,7 +388,6 @@ func (p *CloudFlareProvider) submitChanges(ctx context.Context, changes []*cloud
                                "action": change.Action,
                                "zone":   zoneID,
                        }
-
                        log.WithFields(logFields).Info("Changing record.")

                        if p.DryRun {

Should we go for it?

@ivankatliarchuk
Copy link
Member

ivankatliarchuk commented Mar 15, 2025

Hi. Could you share manifest to test edge cases? As well woul you be able to execute code coverage against modified lines in this pull request?

@mrozentsvayg
Copy link
Contributor Author

Hi. Could you share manifest to test edge cases?

The regular manifest before is as we previously discussed and as implemented in unit-tests:

  • create / delete regular records
  • create / update / delete records with custom hostnames
  • add/remove custom hostname to/from the regular record

The newly discovered edge-cases are caused by testing multi-cluster (GCP) configuration with the same Cloudflare zone and using TXT registry as a result.
There's currently no graceful way of updating TXT records, whereas changes are sometimes mandated (eg. to shorten txt suffix/prefix to fit into 63 bytes limit for the record).
Another peculiarity - if TXT record alone is removed, it's lost. The only graceful way to get it back is to remove the RR.
If RR record alone is removed, the container would crash, because the previous TXT record still exists.
Yet another - newly added --txt-new-format-only option, very useful to better control number of TXT records and TXT records length.
So in case there's a need to change prefix/suffix/owner, I'd controllably remove the RRs along with TXTs in small batches, monitoring the progress.
Specifically for the custom hostnames it's best not to touch it during such maintenance, because it would take time to revalidate and reissue the certificate.

So latest addition to the manifest:

  • manually remove RR&TXT records, make sure both correctly get recreated, still associated with the still existing custom hostname

As well woul you be able to execute code coverage against modified lines in this pull request?

I'm looking closely at the coverage and making sure it's not getting any more relaxed on every change.
Latest commits are not exception, can't attach html here unfortunately.

@mrozentsvayg mrozentsvayg force-pushed the mrozentsvayg/cloudflare-custom-hostnames-duplicate-records branch from bee85fc to 12cce6f Compare March 18, 2025 02:20
…arate method submitCustomHostnameChanges(); extend truncated logging
@ivankatliarchuk
Copy link
Member

/label tide/merge-method-squash
/kind bug
/kind cleanup

@k8s-ci-robot k8s-ci-robot added kind/bug Categorizes issue or PR as related to a bug. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges. labels Mar 18, 2025
@mrozentsvayg
Copy link
Contributor Author

mrozentsvayg commented Mar 18, 2025

#5183 (comment)

Pulling this comment up from the thread.
Please let me know if anyone has a strong opinion.
If we are pushing for consistently having quoted names in log output, I would commit it for Cloudflare provider to start with.
Then eventually propagate it further on.

@ivankatliarchuk
Copy link
Member

Consistency is nice. No strong opinion how it should or could be implemented. Most likely should be same for the whole project, and is most likely out of the scope for this PR

Copy link
Member

@ivankatliarchuk ivankatliarchuk left a comment

Choose a reason for hiding this comment

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

/lgtm

cc: @mloiseleur @szuecs

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Mar 19, 2025
@mloiseleur
Copy link
Collaborator

@mrozentsvayg I just have a last small change to suggest.

BTW, we are looking for help to maintain this project. The process is documented here. If you are interested, please reach out (on kubernetes slack).

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Mar 21, 2025
@mloiseleur
Copy link
Collaborator

/approve
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Mar 24, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ivankatliarchuk, mloiseleur

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 Mar 24, 2025
@k8s-ci-robot k8s-ci-robot merged commit 04f6a99 into kubernetes-sigs:master Mar 24, 2025
13 checks passed
ivankatliarchuk added a commit to gofogo/k8s-sigs-external-dns-fork that referenced this pull request Mar 28, 2025
…' into feat-code-cleanup-0

* refs/remotes/origin/feat-code-cleanup-0:
  fix(cloudflare): custom hostnames edge-cases causing duplicates (kubernetes-sigs#5183)
  feat(banner): standardize user agent and output (kubernetes-sigs#5154)
  feat: IDNA awareness in the zone finder (kubernetes-sigs#5147)
  chore(deps): bump the dev-dependencies group across 1 directory with 20 updates
  chore(deps): bump renovatebot/github-action
  feat(chart): Update image to v0.16.1
  fix: correct route53 iam
  chore(deps): bump renovatebot/github-action
  feat(ovh): major rewriting of the provider (kubernetes-sigs#5143)
  Add Yandex Cloud Webhook
  chore(openstack designate)!: remove in-tree provider
ivankatliarchuk pushed a commit to gofogo/k8s-sigs-external-dns-fork that referenced this pull request Apr 16, 2025
# This is the 1st commit message:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

# This is the commit message #2:

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).


Updates `renovatebot/github-action` from 41.0.14 to 41.0.16
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.14...v41.0.16)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>
# This is the commit message #3:

feat(chart): Update image to v0.16.1

Signed-off-by: Steve Hipwell <[email protected]>

# This is the commit message #4:

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).


Updates `renovatebot/github-action` from 41.0.16 to 41.0.17
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.16...v41.0.17)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>
# This is the commit message #5:

feat: IDNA awareness in the zone finder (kubernetes-sigs#5147)

* feat: IDNA awareness in the zone finder

* feat: update zonefinder unit tests

* chore: add warning log and respective test
# This is the commit message #6:

feat(banner): standardize user agent and output (kubernetes-sigs#5154)

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* feat(banner): standartise user agent and output banner

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
# This is the commit message #7:

fix(cloudflare): custom hostnames edge-cases causing duplicates (kubernetes-sigs#5183)

* fix(cloudflare): custom hostnames edge-cases causing duplicates

* syntax/style

* Use %q log fmt for cloudflare provider code

* move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

* use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

* types for records/custom hostnames maps

* tidy up using underlying maps for dns records and custom hostnames

* style/naming

* fix private names

* combine unnecessarily separated conditions
# This is the commit message #8:

fix: correct route53 iam
# This is the commit message #9:

chore(deps): bump the dev-dependencies group across 1 directory with 20 updates

Bumps the dev-dependencies group with 16 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.0` | `1.17.1` |
| [github.com/IBM-Cloud/ibm-cloud-cli-sdk](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk) | `1.6.2` | `1.7.0` |
| [github.com/IBM/go-sdk-core/v5](https://github.com/IBM/go-sdk-core) | `5.18.5` | `5.19.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.92` | `1.63.100` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.7` | `1.18.8` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.49.1` | `1.50.0` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.94` | `0.3.95` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.138.0` | `1.141.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.63` | `1.1.64` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.85.0` | `65.87.0` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1129` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1128` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.19` | `3.5.20` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.223.0` | `0.227.0` |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.2` | `0.32.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.2` | `0.32.3` |



Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.0...sdk/azcore/v1.17.1)

Updates `github.com/IBM-Cloud/ibm-cloud-cli-sdk` from 1.6.2 to 1.7.0
- [Release notes](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk/releases)
- [Commits](IBM-Cloud/ibm-cloud-cli-sdk@v1.6.2...v1.7.0)

Updates `github.com/IBM/go-sdk-core/v5` from 5.18.5 to 5.19.0
- [Release notes](https://github.com/IBM/go-sdk-core/releases)
- [Changelog](https://github.com/IBM/go-sdk-core/blob/main/CHANGELOG.md)
- [Commits](IBM/go-sdk-core@v5.18.5...v5.19.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.92 to 1.63.100
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.92...v1.63.100)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.7 to 1.18.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.7...config/v1.18.8)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ecr/v1.41.1...service/s3/v1.42.0)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.49.1 to 1.50.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ssm/v1.49.1...service/s3/v1.50.0)

Updates `github.com/civo/civogo` from 0.3.94 to 0.3.95
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.94...v0.3.95)

Updates `github.com/digitalocean/godo` from 1.138.0 to 1.141.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.138.0...v1.141.0)

Updates `github.com/miekg/dns` from 1.1.63 to 1.1.64
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.63...v1.1.64)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.85.0 to 65.87.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.85.0...v65.87.0)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1115 to 1.0.1129
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1129)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1115 to 1.0.1128
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1128)

Updates `go.etcd.io/etcd/client/v3` from 3.5.19 to 3.5.20
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.19...v3.5.20)

Updates `golang.org/x/net` from 0.36.0 to 0.37.0
- [Commits](golang/net@v0.36.0...v0.37.0)

Updates `golang.org/x/text` from 0.22.0 to 0.23.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.22.0...v0.23.0)

Updates `google.golang.org/api` from 0.223.0 to 0.227.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.223.0...v0.227.0)

Updates `k8s.io/api` from 0.32.2 to 0.32.3
- [Commits](kubernetes/api@v0.32.2...v0.32.3)

Updates `k8s.io/apimachinery` from 0.32.2 to 0.32.3
- [Commits](kubernetes/apimachinery@v0.32.2...v0.32.3)

Updates `k8s.io/client-go` from 0.32.2 to 0.32.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](kubernetes/client-go@v0.32.2...v0.32.3)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM-Cloud/ibm-cloud-cli-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM/go-sdk-core/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>
# This is the commit message #10:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

# This is the commit message #11:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

# This is the commit message #12:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

# This is the commit message #13:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

# This is the commit message #14:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

# This is the commit message #15:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>
ivankatliarchuk added a commit to gofogo/k8s-sigs-external-dns-fork that referenced this pull request Apr 16, 2025
Signed-off-by: ivan katliarchuk <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.14 to 41.0.16
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.14...v41.0.16)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat(chart): Update image to v0.16.1

Signed-off-by: Steve Hipwell <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.16 to 41.0.17
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.16...v41.0.17)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat: IDNA awareness in the zone finder (kubernetes-sigs#5147)

* feat: IDNA awareness in the zone finder

* feat: update zonefinder unit tests

* chore: add warning log and respective test

feat(banner): standardize user agent and output (kubernetes-sigs#5154)

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* feat(banner): standartise user agent and output banner

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates (kubernetes-sigs#5183)

* fix(cloudflare): custom hostnames edge-cases causing duplicates

* syntax/style

* Use %q log fmt for cloudflare provider code

* move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

* use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

* types for records/custom hostnames maps

* tidy up using underlying maps for dns records and custom hostnames

* style/naming

* fix private names

* combine unnecessarily separated conditions

fix: correct route53 iam

chore(deps): bump the dev-dependencies group across 1 directory with 20 updates

Bumps the dev-dependencies group with 16 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.0` | `1.17.1` |
| [github.com/IBM-Cloud/ibm-cloud-cli-sdk](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk) | `1.6.2` | `1.7.0` |
| [github.com/IBM/go-sdk-core/v5](https://github.com/IBM/go-sdk-core) | `5.18.5` | `5.19.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.92` | `1.63.100` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.7` | `1.18.8` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.49.1` | `1.50.0` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.94` | `0.3.95` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.138.0` | `1.141.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.63` | `1.1.64` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.85.0` | `65.87.0` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1129` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1128` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.19` | `3.5.20` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.223.0` | `0.227.0` |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.2` | `0.32.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.2` | `0.32.3` |

Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.0...sdk/azcore/v1.17.1)

Updates `github.com/IBM-Cloud/ibm-cloud-cli-sdk` from 1.6.2 to 1.7.0
- [Release notes](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk/releases)
- [Commits](IBM-Cloud/ibm-cloud-cli-sdk@v1.6.2...v1.7.0)

Updates `github.com/IBM/go-sdk-core/v5` from 5.18.5 to 5.19.0
- [Release notes](https://github.com/IBM/go-sdk-core/releases)
- [Changelog](https://github.com/IBM/go-sdk-core/blob/main/CHANGELOG.md)
- [Commits](IBM/go-sdk-core@v5.18.5...v5.19.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.92 to 1.63.100
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.92...v1.63.100)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.7 to 1.18.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.7...config/v1.18.8)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ecr/v1.41.1...service/s3/v1.42.0)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.49.1 to 1.50.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ssm/v1.49.1...service/s3/v1.50.0)

Updates `github.com/civo/civogo` from 0.3.94 to 0.3.95
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.94...v0.3.95)

Updates `github.com/digitalocean/godo` from 1.138.0 to 1.141.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.138.0...v1.141.0)

Updates `github.com/miekg/dns` from 1.1.63 to 1.1.64
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.63...v1.1.64)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.85.0 to 65.87.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.85.0...v65.87.0)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1115 to 1.0.1129
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1129)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1115 to 1.0.1128
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1128)

Updates `go.etcd.io/etcd/client/v3` from 3.5.19 to 3.5.20
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.19...v3.5.20)

Updates `golang.org/x/net` from 0.36.0 to 0.37.0
- [Commits](golang/net@v0.36.0...v0.37.0)

Updates `golang.org/x/text` from 0.22.0 to 0.23.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.22.0...v0.23.0)

Updates `google.golang.org/api` from 0.223.0 to 0.227.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.223.0...v0.227.0)

Updates `k8s.io/api` from 0.32.2 to 0.32.3
- [Commits](kubernetes/api@v0.32.2...v0.32.3)

Updates `k8s.io/apimachinery` from 0.32.2 to 0.32.3
- [Commits](kubernetes/apimachinery@v0.32.2...v0.32.3)

Updates `k8s.io/client-go` from 0.32.2 to 0.32.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](kubernetes/client-go@v0.32.2...v0.32.3)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM-Cloud/ibm-cloud-cli-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM/go-sdk-core/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

feat: added expose internal ipv6 flag

fix: removing fmt.Printf

fix: fixing ci lint

docs: added documentation in node source

edited docs and made new test

added warn log

detailed documentation with no-expose

added new tests to handle edge case

renaming variable

removing reduntant code

fix(chart): add missing types for empty values (kubernetes-sigs#5207)

* fix(chart): add missing types for empty values

Signed-off-by: t3mi <[email protected]>

* fix(chart): add one more space before comment

Signed-off-by: t3mi <[email protected]>

* chore: add changelog entry

Signed-off-by: t3mi <[email protected]>

* fix: use default value for service account token

Signed-off-by: t3mi <[email protected]>

* fix: tests for new default values

Signed-off-by: t3mi <[email protected]>

* chore: add one more changelog entry

Signed-off-by: t3mi <[email protected]>

---------

Signed-off-by: t3mi <[email protected]>

fix(node): logger test fixed (kubernetes-sigs#5232)

Signed-off-by: ivan katliarchuk <[email protected]>

docs: Fix typo: grcp → grpc.

chore(deps): bump the dev-dependencies group across 1 directory with 17 updates

Bumps the dev-dependencies group with 15 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/IBM/networking-go-sdk](https://github.com/IBM/networking-go-sdk) | `0.51.2` | `0.51.3` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.100` | `1.63.103` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.29.9` | `1.29.12` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.95` | `0.3.96` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.141.0` | `1.142.0` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.87.0` | `65.88.0` |
| [github.com/projectcontour/contour](https://github.com/projectcontour/contour) | `1.30.2` | `1.30.3` |
| [github.com/scaleway/scaleway-sdk-go](https://github.com/scaleway/scaleway-sdk-go) | `1.0.0-beta.32` | `1.0.0-beta.33` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1129` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1128` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1132` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.20` | `3.5.21` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.227.0` | `0.228.0` |
| [istio.io/api](https://github.com/istio/api) | `1.25.0` | `1.25.1` |
| [istio.io/client-go](https://github.com/istio/client-go) | `1.25.0` | `1.25.1` |

Updates `github.com/IBM/networking-go-sdk` from 0.51.2 to 0.51.3
- [Release notes](https://github.com/IBM/networking-go-sdk/releases)
- [Changelog](https://github.com/IBM/networking-go-sdk/blob/master/CHANGELOG.md)
- [Commits](IBM/networking-go-sdk@v0.51.2...v0.51.3)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.100 to 1.63.103
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.100...v1.63.103)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.29.9 to 1.29.12
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.29.9...config/v1.29.12)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.62 to 1.17.65
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@credentials/v1.17.62...credentials/v1.17.65)

Updates `github.com/civo/civogo` from 0.3.95 to 0.3.96
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.95...v0.3.96)

Updates `github.com/digitalocean/godo` from 1.141.0 to 1.142.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.141.0...v1.142.0)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.87.0 to 65.88.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.87.0...v65.88.0)

Updates `github.com/projectcontour/contour` from 1.30.2 to 1.30.3
- [Release notes](https://github.com/projectcontour/contour/releases)
- [Changelog](https://github.com/projectcontour/contour/blob/main/RELEASES.md)
- [Commits](projectcontour/contour@v1.30.2...v1.30.3)

Updates `github.com/scaleway/scaleway-sdk-go` from 1.0.0-beta.32 to 1.0.0-beta.33
- [Release notes](https://github.com/scaleway/scaleway-sdk-go/releases)
- [Changelog](https://github.com/scaleway/scaleway-sdk-go/blob/master/CHANGELOG.md)
- [Commits](scaleway/scaleway-sdk-go@v1.0.0-beta.32...v1.0.0-beta.33)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1129 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1129...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1128 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1128...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns` from 1.0.1115 to 1.0.1132
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1132)

Updates `go.etcd.io/etcd/client/v3` from 3.5.20 to 3.5.21
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.20...v3.5.21)

Updates `golang.org/x/net` from 0.37.0 to 0.38.0
- [Commits](golang/net@v0.37.0...v0.38.0)

Updates `google.golang.org/api` from 0.227.0 to 0.228.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.227.0...v0.228.0)

Updates `istio.io/api` from 1.25.0 to 1.25.1
- [Commits](istio/api@1.25.0...1.25.1)

Updates `istio.io/client-go` from 1.25.0 to 1.25.1
- [Commits](istio/client-go@1.25.0...1.25.1)

---
updated-dependencies:
- dependency-name: github.com/IBM/networking-go-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/projectcontour/contour
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/scaleway/scaleway-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: istio.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: istio.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore: add se for nlb, alb in thailand region

chore(code-cleanup): move logic away from main.go add tests (kubernetes-sigs#5222)

* feat(code cleanup): remove from main.go

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

docs(proposal): externaldns api graduation to beta (kubernetes-sigs#5079)

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Co-authored-by: Michel Loiseleur <[email protected]>

* docs(proposal): externaldns api graduation to beta

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(helm): added missing schema values (kubernetes-sigs#5228)

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

chore(ci): update linter to v2.0.2

feat(pihole): add optional support for v6 (kubernetes-sigs#5226)

* Pi hole V6 impl

* Code Review Part One

* Fix Go Lint

* Regenerate Flags file

* Increase code coverage 1/2

* Increase code coverage 2/2

* Fix merge conflict => Provider init move from main.go to execute.go

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates

syntax/style

Use %q log fmt for cloudflare provider code
ivankatliarchuk added a commit to gofogo/k8s-sigs-external-dns-fork that referenced this pull request Apr 16, 2025
# This is the 1st commit message:

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.14 to 41.0.16
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.14...v41.0.16)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat(chart): Update image to v0.16.1

Signed-off-by: Steve Hipwell <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.16 to 41.0.17
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.16...v41.0.17)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat: IDNA awareness in the zone finder (kubernetes-sigs#5147)

* feat: IDNA awareness in the zone finder

* feat: update zonefinder unit tests

* chore: add warning log and respective test

feat(banner): standardize user agent and output (kubernetes-sigs#5154)

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* feat(banner): standartise user agent and output banner

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates (kubernetes-sigs#5183)

* fix(cloudflare): custom hostnames edge-cases causing duplicates

* syntax/style

* Use %q log fmt for cloudflare provider code

* move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

* use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

* types for records/custom hostnames maps

* tidy up using underlying maps for dns records and custom hostnames

* style/naming

* fix private names

* combine unnecessarily separated conditions

fix: correct route53 iam

chore(deps): bump the dev-dependencies group across 1 directory with 20 updates

Bumps the dev-dependencies group with 16 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.0` | `1.17.1` |
| [github.com/IBM-Cloud/ibm-cloud-cli-sdk](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk) | `1.6.2` | `1.7.0` |
| [github.com/IBM/go-sdk-core/v5](https://github.com/IBM/go-sdk-core) | `5.18.5` | `5.19.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.92` | `1.63.100` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.7` | `1.18.8` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.49.1` | `1.50.0` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.94` | `0.3.95` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.138.0` | `1.141.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.63` | `1.1.64` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.85.0` | `65.87.0` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1129` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1128` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.19` | `3.5.20` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.223.0` | `0.227.0` |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.2` | `0.32.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.2` | `0.32.3` |

Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.0...sdk/azcore/v1.17.1)

Updates `github.com/IBM-Cloud/ibm-cloud-cli-sdk` from 1.6.2 to 1.7.0
- [Release notes](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk/releases)
- [Commits](IBM-Cloud/ibm-cloud-cli-sdk@v1.6.2...v1.7.0)

Updates `github.com/IBM/go-sdk-core/v5` from 5.18.5 to 5.19.0
- [Release notes](https://github.com/IBM/go-sdk-core/releases)
- [Changelog](https://github.com/IBM/go-sdk-core/blob/main/CHANGELOG.md)
- [Commits](IBM/go-sdk-core@v5.18.5...v5.19.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.92 to 1.63.100
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.92...v1.63.100)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.7 to 1.18.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.7...config/v1.18.8)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ecr/v1.41.1...service/s3/v1.42.0)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.49.1 to 1.50.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ssm/v1.49.1...service/s3/v1.50.0)

Updates `github.com/civo/civogo` from 0.3.94 to 0.3.95
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.94...v0.3.95)

Updates `github.com/digitalocean/godo` from 1.138.0 to 1.141.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.138.0...v1.141.0)

Updates `github.com/miekg/dns` from 1.1.63 to 1.1.64
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.63...v1.1.64)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.85.0 to 65.87.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.85.0...v65.87.0)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1115 to 1.0.1129
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1129)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1115 to 1.0.1128
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1128)

Updates `go.etcd.io/etcd/client/v3` from 3.5.19 to 3.5.20
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.19...v3.5.20)

Updates `golang.org/x/net` from 0.36.0 to 0.37.0
- [Commits](golang/net@v0.36.0...v0.37.0)

Updates `golang.org/x/text` from 0.22.0 to 0.23.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.22.0...v0.23.0)

Updates `google.golang.org/api` from 0.223.0 to 0.227.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.223.0...v0.227.0)

Updates `k8s.io/api` from 0.32.2 to 0.32.3
- [Commits](kubernetes/api@v0.32.2...v0.32.3)

Updates `k8s.io/apimachinery` from 0.32.2 to 0.32.3
- [Commits](kubernetes/apimachinery@v0.32.2...v0.32.3)

Updates `k8s.io/client-go` from 0.32.2 to 0.32.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](kubernetes/client-go@v0.32.2...v0.32.3)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM-Cloud/ibm-cloud-cli-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM/go-sdk-core/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

feat: added expose internal ipv6 flag

fix: removing fmt.Printf

fix: fixing ci lint

docs: added documentation in node source

edited docs and made new test

added warn log

detailed documentation with no-expose

added new tests to handle edge case

renaming variable

removing reduntant code

fix(chart): add missing types for empty values (kubernetes-sigs#5207)

* fix(chart): add missing types for empty values

Signed-off-by: t3mi <[email protected]>

* fix(chart): add one more space before comment

Signed-off-by: t3mi <[email protected]>

* chore: add changelog entry

Signed-off-by: t3mi <[email protected]>

* fix: use default value for service account token

Signed-off-by: t3mi <[email protected]>

* fix: tests for new default values

Signed-off-by: t3mi <[email protected]>

* chore: add one more changelog entry

Signed-off-by: t3mi <[email protected]>

---------

Signed-off-by: t3mi <[email protected]>

fix(node): logger test fixed (kubernetes-sigs#5232)

Signed-off-by: ivan katliarchuk <[email protected]>

docs: Fix typo: grcp → grpc.

chore(deps): bump the dev-dependencies group across 1 directory with 17 updates

Bumps the dev-dependencies group with 15 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/IBM/networking-go-sdk](https://github.com/IBM/networking-go-sdk) | `0.51.2` | `0.51.3` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.100` | `1.63.103` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.29.9` | `1.29.12` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.95` | `0.3.96` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.141.0` | `1.142.0` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.87.0` | `65.88.0` |
| [github.com/projectcontour/contour](https://github.com/projectcontour/contour) | `1.30.2` | `1.30.3` |
| [github.com/scaleway/scaleway-sdk-go](https://github.com/scaleway/scaleway-sdk-go) | `1.0.0-beta.32` | `1.0.0-beta.33` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1129` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1128` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1132` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.20` | `3.5.21` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.227.0` | `0.228.0` |
| [istio.io/api](https://github.com/istio/api) | `1.25.0` | `1.25.1` |
| [istio.io/client-go](https://github.com/istio/client-go) | `1.25.0` | `1.25.1` |

Updates `github.com/IBM/networking-go-sdk` from 0.51.2 to 0.51.3
- [Release notes](https://github.com/IBM/networking-go-sdk/releases)
- [Changelog](https://github.com/IBM/networking-go-sdk/blob/master/CHANGELOG.md)
- [Commits](IBM/networking-go-sdk@v0.51.2...v0.51.3)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.100 to 1.63.103
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.100...v1.63.103)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.29.9 to 1.29.12
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.29.9...config/v1.29.12)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.62 to 1.17.65
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@credentials/v1.17.62...credentials/v1.17.65)

Updates `github.com/civo/civogo` from 0.3.95 to 0.3.96
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.95...v0.3.96)

Updates `github.com/digitalocean/godo` from 1.141.0 to 1.142.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.141.0...v1.142.0)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.87.0 to 65.88.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.87.0...v65.88.0)

Updates `github.com/projectcontour/contour` from 1.30.2 to 1.30.3
- [Release notes](https://github.com/projectcontour/contour/releases)
- [Changelog](https://github.com/projectcontour/contour/blob/main/RELEASES.md)
- [Commits](projectcontour/contour@v1.30.2...v1.30.3)

Updates `github.com/scaleway/scaleway-sdk-go` from 1.0.0-beta.32 to 1.0.0-beta.33
- [Release notes](https://github.com/scaleway/scaleway-sdk-go/releases)
- [Changelog](https://github.com/scaleway/scaleway-sdk-go/blob/master/CHANGELOG.md)
- [Commits](scaleway/scaleway-sdk-go@v1.0.0-beta.32...v1.0.0-beta.33)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1129 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1129...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1128 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1128...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns` from 1.0.1115 to 1.0.1132
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1132)

Updates `go.etcd.io/etcd/client/v3` from 3.5.20 to 3.5.21
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.20...v3.5.21)

Updates `golang.org/x/net` from 0.37.0 to 0.38.0
- [Commits](golang/net@v0.37.0...v0.38.0)

Updates `google.golang.org/api` from 0.227.0 to 0.228.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.227.0...v0.228.0)

Updates `istio.io/api` from 1.25.0 to 1.25.1
- [Commits](istio/api@1.25.0...1.25.1)

Updates `istio.io/client-go` from 1.25.0 to 1.25.1
- [Commits](istio/client-go@1.25.0...1.25.1)

---
updated-dependencies:
- dependency-name: github.com/IBM/networking-go-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/projectcontour/contour
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/scaleway/scaleway-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: istio.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: istio.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore: add se for nlb, alb in thailand region

chore(code-cleanup): move logic away from main.go add tests (kubernetes-sigs#5222)

* feat(code cleanup): remove from main.go

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

docs(proposal): externaldns api graduation to beta (kubernetes-sigs#5079)

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Co-authored-by: Michel Loiseleur <[email protected]>

* docs(proposal): externaldns api graduation to beta

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(helm): added missing schema values (kubernetes-sigs#5228)

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

chore(ci): update linter to v2.0.2

feat(pihole): add optional support for v6 (kubernetes-sigs#5226)

* Pi hole V6 impl

* Code Review Part One

* Fix Go Lint

* Regenerate Flags file

* Increase code coverage 1/2

* Increase code coverage 2/2

* Fix merge conflict => Provider init move from main.go to execute.go

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates

syntax/style

Use %q log fmt for cloudflare provider code

move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

types for records/custom hostnames maps

tidy up using underlying maps for dns records and custom hostnames

style/naming

fix private names

combine unnecessarily separated conditions

feat(cloudflare): multiple custom hostnames support

remove redunaant custom hostnames sort

rename variables with ambiguous "endpoint" names

# This is the commit message #2:

Update cloudflare.md

split long lines
ivankatliarchuk added a commit to gofogo/k8s-sigs-external-dns-fork that referenced this pull request Apr 16, 2025
Signed-off-by: ivan katliarchuk <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.14 to 41.0.16
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.14...v41.0.16)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat(chart): Update image to v0.16.1

Signed-off-by: Steve Hipwell <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.16 to 41.0.17
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.16...v41.0.17)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat: IDNA awareness in the zone finder (kubernetes-sigs#5147)

* feat: IDNA awareness in the zone finder

* feat: update zonefinder unit tests

* chore: add warning log and respective test

feat(banner): standardize user agent and output (kubernetes-sigs#5154)

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* feat(banner): standartise user agent and output banner

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates (kubernetes-sigs#5183)

* fix(cloudflare): custom hostnames edge-cases causing duplicates

* syntax/style

* Use %q log fmt for cloudflare provider code

* move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

* use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

* types for records/custom hostnames maps

* tidy up using underlying maps for dns records and custom hostnames

* style/naming

* fix private names

* combine unnecessarily separated conditions

fix: correct route53 iam

chore(deps): bump the dev-dependencies group across 1 directory with 20 updates

Bumps the dev-dependencies group with 16 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.0` | `1.17.1` |
| [github.com/IBM-Cloud/ibm-cloud-cli-sdk](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk) | `1.6.2` | `1.7.0` |
| [github.com/IBM/go-sdk-core/v5](https://github.com/IBM/go-sdk-core) | `5.18.5` | `5.19.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.92` | `1.63.100` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.7` | `1.18.8` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.49.1` | `1.50.0` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.94` | `0.3.95` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.138.0` | `1.141.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.63` | `1.1.64` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.85.0` | `65.87.0` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1129` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1128` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.19` | `3.5.20` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.223.0` | `0.227.0` |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.2` | `0.32.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.2` | `0.32.3` |

Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.0...sdk/azcore/v1.17.1)

Updates `github.com/IBM-Cloud/ibm-cloud-cli-sdk` from 1.6.2 to 1.7.0
- [Release notes](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk/releases)
- [Commits](IBM-Cloud/ibm-cloud-cli-sdk@v1.6.2...v1.7.0)

Updates `github.com/IBM/go-sdk-core/v5` from 5.18.5 to 5.19.0
- [Release notes](https://github.com/IBM/go-sdk-core/releases)
- [Changelog](https://github.com/IBM/go-sdk-core/blob/main/CHANGELOG.md)
- [Commits](IBM/go-sdk-core@v5.18.5...v5.19.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.92 to 1.63.100
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.92...v1.63.100)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.7 to 1.18.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.7...config/v1.18.8)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ecr/v1.41.1...service/s3/v1.42.0)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.49.1 to 1.50.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ssm/v1.49.1...service/s3/v1.50.0)

Updates `github.com/civo/civogo` from 0.3.94 to 0.3.95
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.94...v0.3.95)

Updates `github.com/digitalocean/godo` from 1.138.0 to 1.141.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.138.0...v1.141.0)

Updates `github.com/miekg/dns` from 1.1.63 to 1.1.64
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.63...v1.1.64)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.85.0 to 65.87.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.85.0...v65.87.0)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1115 to 1.0.1129
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1129)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1115 to 1.0.1128
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1128)

Updates `go.etcd.io/etcd/client/v3` from 3.5.19 to 3.5.20
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.19...v3.5.20)

Updates `golang.org/x/net` from 0.36.0 to 0.37.0
- [Commits](golang/net@v0.36.0...v0.37.0)

Updates `golang.org/x/text` from 0.22.0 to 0.23.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.22.0...v0.23.0)

Updates `google.golang.org/api` from 0.223.0 to 0.227.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.223.0...v0.227.0)

Updates `k8s.io/api` from 0.32.2 to 0.32.3
- [Commits](kubernetes/api@v0.32.2...v0.32.3)

Updates `k8s.io/apimachinery` from 0.32.2 to 0.32.3
- [Commits](kubernetes/apimachinery@v0.32.2...v0.32.3)

Updates `k8s.io/client-go` from 0.32.2 to 0.32.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](kubernetes/client-go@v0.32.2...v0.32.3)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM-Cloud/ibm-cloud-cli-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM/go-sdk-core/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

feat: added expose internal ipv6 flag

fix: removing fmt.Printf

fix: fixing ci lint

docs: added documentation in node source

edited docs and made new test

added warn log

detailed documentation with no-expose

added new tests to handle edge case

renaming variable

removing reduntant code

fix(chart): add missing types for empty values (kubernetes-sigs#5207)

* fix(chart): add missing types for empty values

Signed-off-by: t3mi <[email protected]>

* fix(chart): add one more space before comment

Signed-off-by: t3mi <[email protected]>

* chore: add changelog entry

Signed-off-by: t3mi <[email protected]>

* fix: use default value for service account token

Signed-off-by: t3mi <[email protected]>

* fix: tests for new default values

Signed-off-by: t3mi <[email protected]>

* chore: add one more changelog entry

Signed-off-by: t3mi <[email protected]>

---------

Signed-off-by: t3mi <[email protected]>

fix(node): logger test fixed (kubernetes-sigs#5232)

Signed-off-by: ivan katliarchuk <[email protected]>

docs: Fix typo: grcp → grpc.

chore(deps): bump the dev-dependencies group across 1 directory with 17 updates

Bumps the dev-dependencies group with 15 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/IBM/networking-go-sdk](https://github.com/IBM/networking-go-sdk) | `0.51.2` | `0.51.3` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.100` | `1.63.103` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.29.9` | `1.29.12` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.95` | `0.3.96` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.141.0` | `1.142.0` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.87.0` | `65.88.0` |
| [github.com/projectcontour/contour](https://github.com/projectcontour/contour) | `1.30.2` | `1.30.3` |
| [github.com/scaleway/scaleway-sdk-go](https://github.com/scaleway/scaleway-sdk-go) | `1.0.0-beta.32` | `1.0.0-beta.33` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1129` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1128` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1132` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.20` | `3.5.21` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.227.0` | `0.228.0` |
| [istio.io/api](https://github.com/istio/api) | `1.25.0` | `1.25.1` |
| [istio.io/client-go](https://github.com/istio/client-go) | `1.25.0` | `1.25.1` |

Updates `github.com/IBM/networking-go-sdk` from 0.51.2 to 0.51.3
- [Release notes](https://github.com/IBM/networking-go-sdk/releases)
- [Changelog](https://github.com/IBM/networking-go-sdk/blob/master/CHANGELOG.md)
- [Commits](IBM/networking-go-sdk@v0.51.2...v0.51.3)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.100 to 1.63.103
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.100...v1.63.103)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.29.9 to 1.29.12
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.29.9...config/v1.29.12)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.62 to 1.17.65
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@credentials/v1.17.62...credentials/v1.17.65)

Updates `github.com/civo/civogo` from 0.3.95 to 0.3.96
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.95...v0.3.96)

Updates `github.com/digitalocean/godo` from 1.141.0 to 1.142.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.141.0...v1.142.0)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.87.0 to 65.88.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.87.0...v65.88.0)

Updates `github.com/projectcontour/contour` from 1.30.2 to 1.30.3
- [Release notes](https://github.com/projectcontour/contour/releases)
- [Changelog](https://github.com/projectcontour/contour/blob/main/RELEASES.md)
- [Commits](projectcontour/contour@v1.30.2...v1.30.3)

Updates `github.com/scaleway/scaleway-sdk-go` from 1.0.0-beta.32 to 1.0.0-beta.33
- [Release notes](https://github.com/scaleway/scaleway-sdk-go/releases)
- [Changelog](https://github.com/scaleway/scaleway-sdk-go/blob/master/CHANGELOG.md)
- [Commits](scaleway/scaleway-sdk-go@v1.0.0-beta.32...v1.0.0-beta.33)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1129 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1129...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1128 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1128...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns` from 1.0.1115 to 1.0.1132
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1132)

Updates `go.etcd.io/etcd/client/v3` from 3.5.20 to 3.5.21
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.20...v3.5.21)

Updates `golang.org/x/net` from 0.37.0 to 0.38.0
- [Commits](golang/net@v0.37.0...v0.38.0)

Updates `google.golang.org/api` from 0.227.0 to 0.228.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.227.0...v0.228.0)

Updates `istio.io/api` from 1.25.0 to 1.25.1
- [Commits](istio/api@1.25.0...1.25.1)

Updates `istio.io/client-go` from 1.25.0 to 1.25.1
- [Commits](istio/client-go@1.25.0...1.25.1)

---
updated-dependencies:
- dependency-name: github.com/IBM/networking-go-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/projectcontour/contour
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/scaleway/scaleway-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: istio.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: istio.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore: add se for nlb, alb in thailand region

chore(code-cleanup): move logic away from main.go add tests (kubernetes-sigs#5222)

* feat(code cleanup): remove from main.go

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

docs(proposal): externaldns api graduation to beta (kubernetes-sigs#5079)

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Co-authored-by: Michel Loiseleur <[email protected]>

* docs(proposal): externaldns api graduation to beta

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(helm): added missing schema values (kubernetes-sigs#5228)

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

chore(ci): update linter to v2.0.2

feat(pihole): add optional support for v6 (kubernetes-sigs#5226)

* Pi hole V6 impl

* Code Review Part One

* Fix Go Lint

* Regenerate Flags file

* Increase code coverage 1/2

* Increase code coverage 2/2

* Fix merge conflict => Provider init move from main.go to execute.go

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates

syntax/style

Use %q log fmt for cloudflare provider code

move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

types for records/custom hostnames maps

tidy up using underlying maps for dns records and custom hostnames

style/naming

fix private names

combine unnecessarily separated conditions

feat(cloudflare): multiple custom hostnames support

remove redunaant custom hostnames sort

rename variables with ambiguous "endpoint" names

Update cloudflare.md

split long lines

[attempt to] improve nested conditions readability for cloudflare tests failures scenarios

add test for logging error when creating endpoint and ignoring too long record name (shouldn't happen)

docs: update link to Anexia webhook provider

chore(deps): bump the dev-dependencies group across 1 directory with 2 updates

Bumps the dev-dependencies group with 2 updates in the / directory: [renovatebot/github-action](https://github.com/renovatebot/github-action) and [actions/setup-python](https://github.com/actions/setup-python).

Updates `renovatebot/github-action` from 41.0.17 to 41.0.18
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.17...v41.0.18)

Updates `actions/setup-python` from 5.4.0 to 5.5.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@4237552...8d9ed9a)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat(source): optional exclusion of unschedulable nodes (kubernetes-sigs#5045)

* feat(source/node): Make exclusion of unschedulable Nodes configurable

This fixes a behavioral regression introduced in kubernetes-sigs#4761, where
nodes that were previously added to DNS are removed when they are considered
unschedulable, for example due to automated maintenance tasks.

This change will introduce a new flag called `exclude-unschedulable`, which
defaults to `true` in order to keep in line with the current behavior.
However, it would also be reasonable to restore the initial behavior before

* Allow testing for expected log entries in testNodeSourceEndpoints

This commit adds the required logic to be able to test for
the existence (and absence) of certain log messages
in testNodeSourceEndpoints. As an example, this is implemented
for the tests around excludeUnschedulable.

A side effect of using LogsToBuffer is that tests can't run in
parallel due to the log buffer being shared across all
parallel test cases. As such, these specific tests are now executed
one after another.

* Ensure logging is only hooked for tests that require it

* Document new exclude-unschedulable flag for nodes source

chore(deps): bump the dev-dependencies group across 1 directory with 19 updates

Bumps the dev-dependencies group with 14 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.1` | `1.18.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.103` | `1.63.104` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.29.12` | `1.29.13` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.8` | `1.18.9` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.50.0` | `1.51.0` |
| [github.com/aws/aws-sdk-go-v2/service/servicediscovery](https://github.com/aws/aws-sdk-go-v2) | `1.35.1` | `1.35.2` |
| [github.com/linode/linodego](https://github.com/linode/linodego) | `1.48.1` | `1.49.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.64` | `1.1.65` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.88.0` | `65.88.1` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1134` | `1.0.1140` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1134` | `1.0.1136` |
| [golang.org/x/net](https://github.com/golang/net) | `0.38.0` | `0.39.0` |
| [golang.org/x/oauth2](https://github.com/golang/oauth2) | `0.28.0` | `0.29.0` |
| gopkg.in/ns1/ns1-go.v2 | `2.13.0` | `2.14.1` |

Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.1 to 1.18.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.1...sdk/azcore/v1.18.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.103 to 1.63.104
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.103...v1.63.104)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.29.12 to 1.29.13
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.29.12...config/v1.29.13)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.65 to 1.17.66
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@credentials/v1.17.65...credentials/v1.17.66)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.8 to 1.18.9
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/config/v1.18.9/CHANGELOG.md)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.8...config/v1.18.9)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.42.0 to 1.42.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/s3/v1.42.0...service/s3/v1.42.1)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.50.0 to 1.51.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/s3/v1.50.0...service/s3/v1.51.0)

Updates `github.com/aws/aws-sdk-go-v2/service/servicediscovery` from 1.35.1 to 1.35.2
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/kms/v1.35.1...service/ecr/v1.35.2)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.33.17 to 1.33.18
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/sns/v1.33.17...service/sns/v1.33.18)

Updates `github.com/linode/linodego` from 1.48.1 to 1.49.0
- [Release notes](https://github.com/linode/linodego/releases)
- [Commits](linode/linodego@v1.48.1...v1.49.0)

Updates `github.com/miekg/dns` from 1.1.64 to 1.1.65
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.64...v1.1.65)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.88.0 to 65.88.1
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.88.0...v65.88.1)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1134 to 1.0.1140
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1134...v1.0.1140)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1134 to 1.0.1136
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1134...v1.0.1136)

Updates `golang.org/x/net` from 0.38.0 to 0.39.0
- [Commits](golang/net@v0.38.0...v0.39.0)

Updates `golang.org/x/oauth2` from 0.28.0 to 0.29.0
- [Commits](golang/oauth2@v0.28.0...v0.29.0)

Updates `golang.org/x/sync` from 0.12.0 to 0.13.0
- [Commits](golang/sync@v0.12.0...v0.13.0)

Updates `golang.org/x/text` from 0.23.0 to 0.24.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.23.0...v0.24.0)

Updates `gopkg.in/ns1/ns1-go.v2` from 2.13.0 to 2.14.1

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-version: 1.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-version: 1.63.104
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.29.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-version: 1.17.66
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-version: 1.18.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-version: 1.42.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-version: 1.51.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/servicediscovery
  dependency-version: 1.35.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-version: 1.33.18
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/linode/linodego
  dependency-version: 1.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-version: 1.1.65
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-version: 65.88.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-version: 1.0.1140
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-version: 1.0.1136
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-version: 0.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/oauth2
  dependency-version: 0.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/sync
  dependency-version: 0.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-version: 0.24.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: gopkg.in/ns1/ns1-go.v2
  dependency-version: 2.14.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore(helm): add validation for prefix and suffix and capture regression (kubernetes-sigs#5250)

* chore(helm): add valiation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add valiation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation.tpl and capture regression

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(helm): add validation.tpl and capture regression

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(helm): add validation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Co-authored-by: Steve Hipwell <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>
Co-authored-by: Steve Hipwell <[email protected]>

chore(ci): fix random data race failure on source/node test

only consider accepted gateway routes if the condition generation matches the current one

use route parentRef from spec instead of observedGeneration to select correct status conditions to evaluate

update all route tests to have a valid spec.parentRef entry

add missing lookup for TLSRoute

update gatewayRoute to contain spec.parentRefs instead of extracting that directly from each route during the resolve stage

update comment on gwRouteIsAccepted

validate group and kind on the spec.parentRef. Move check into gwRouteHasParentRef

remove unnecessary variable

chore: Release Helm chart v1.16.1

Signed-off-by: Steve Hipwell <[email protected]>

fix cloudflare regional hostnames

Implements create & delete of regional hostnames for A, AAAA & CNAME
records.
Implements "external-dns.alpha.kubernetes.io/cloudflare-region-key"
annotation.

add tests & fixes for dataLocalizationRegionalHostnamesChanges()

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

changes to goccy yaml

Signed-off-by: Raffaele Di Fazio <[email protected]>

use json to unmarshal json

Signed-off-by: Raffaele Di Fazio <[email protected]>

chore(dependencies): update toools versions (kubernetes-sigs#5252)

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
ivankatliarchuk pushed a commit to gofogo/k8s-sigs-external-dns-fork that referenced this pull request Apr 16, 2025
fix(registry): improve logging for TXT records with empty targets and add unit test

test(registry): enhance logging for empty targets in TXT records test

Test author (#1)

* fix(aws-sd): service instances registration and deregistration (kubernetes-sigs#5135)

* Only de-register removed targets

* Use maps for current targets lookup.

* Use camelCase, not _

* fix(registry): handle empty targets in TXT records logging an error

* fix(registry): improve logging for TXT records with empty targets and add unit test

* test(registry): enhance logging for empty targets in TXT records test

fix: add mexico region to external dns supported load balancers (kubernetes-sigs#5157)

add: auto label source and providers

Signed-off-by: Sandor Szuecs <[email protected]>

feat(source): fitler by gateway name (kubernetes-sigs#5160)

* feat: filter by gateway name

Signed-off-by: Steven Kreitzer <[email protected]>

* address comments

* address comments

* address comments

---------

Signed-off-by: Steven Kreitzer <[email protected]>

chore: update OWNERs with left required config file

cloudflare: bugfix - do not attempt to create unconfigured empty custom hostnames; improve tests; streamline logic (kubernetes-sigs#5146)

improve test coverage

test the edge case when the custom hostname has changed during the record deletion

don't use custom hostnames if Cloudflare for SaaS fails to authenticate

Use new --cloudflare-custom-hostnames flag to enable cloudflare custom hostnames support

custom hostnames flags --cloudflare-custom-hostnames-min-tls-version and --cloudflare-custom-hostnames-certificate-authority support

markdown lint

Update cloudflare.md

fix(source): config didnt set gatewayname

fix(cloudflare): infinite loop with more than 50 custom hostnames (kubernetes-sigs#5181)

* bugfix - do not reset the resultInfo var, causing infinite loop when number of custom hostnames more than 50

* support paging for custom hostnames tests; update doc

chore(release): updates kustomize & docs with v0.16.1

Signed-off-by: Michel Loiseleur <[email protected]>

update release script

update release instructions

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(openstack designate)!: remove in-tree provider

Add Yandex Cloud Webhook

feat(ovh): major rewriting of the provider (kubernetes-sigs#5143)

* feat: ovh: improve cache invalidation on errors + dry-run mode + relative CNAME handling + optimization

Signed-off-by: Romain Beuque <[email protected]>

* chore: add more tests

Signed-off-by: Romain Beuque <[email protected]>

* fix: align cache expiration with Default value

* chore: address comments from review + updated documentation

* chore: address comments from review

---------

Signed-off-by: Romain Beuque <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.14 to 41.0.16
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.14...v41.0.16)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat(chart): Update image to v0.16.1

Signed-off-by: Steve Hipwell <[email protected]>

chore(deps): bump renovatebot/github-action

Bumps the dev-dependencies group with 1 update: [renovatebot/github-action](https://github.com/renovatebot/github-action).

Updates `renovatebot/github-action` from 41.0.16 to 41.0.17
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.16...v41.0.17)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat: IDNA awareness in the zone finder (kubernetes-sigs#5147)

* feat: IDNA awareness in the zone finder

* feat: update zonefinder unit tests

* chore: add warning log and respective test

feat(banner): standardize user agent and output (kubernetes-sigs#5154)

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <[email protected]>

* feat(banner): standartise user agent and output banner

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates (kubernetes-sigs#5183)

* fix(cloudflare): custom hostnames edge-cases causing duplicates

* syntax/style

* Use %q log fmt for cloudflare provider code

* move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

* use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

* types for records/custom hostnames maps

* tidy up using underlying maps for dns records and custom hostnames

* style/naming

* fix private names

* combine unnecessarily separated conditions

fix: correct route53 iam

chore(deps): bump the dev-dependencies group across 1 directory with 20 updates

Bumps the dev-dependencies group with 16 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.0` | `1.17.1` |
| [github.com/IBM-Cloud/ibm-cloud-cli-sdk](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk) | `1.6.2` | `1.7.0` |
| [github.com/IBM/go-sdk-core/v5](https://github.com/IBM/go-sdk-core) | `5.18.5` | `5.19.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.92` | `1.63.100` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.7` | `1.18.8` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.49.1` | `1.50.0` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.94` | `0.3.95` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.138.0` | `1.141.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.63` | `1.1.64` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.85.0` | `65.87.0` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1129` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1128` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.19` | `3.5.20` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.223.0` | `0.227.0` |
| [k8s.io/api](https://github.com/kubernetes/api) | `0.32.2` | `0.32.3` |
| [k8s.io/client-go](https://github.com/kubernetes/client-go) | `0.32.2` | `0.32.3` |

Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.0 to 1.17.1
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.0...sdk/azcore/v1.17.1)

Updates `github.com/IBM-Cloud/ibm-cloud-cli-sdk` from 1.6.2 to 1.7.0
- [Release notes](https://github.com/IBM-Cloud/ibm-cloud-cli-sdk/releases)
- [Commits](IBM-Cloud/ibm-cloud-cli-sdk@v1.6.2...v1.7.0)

Updates `github.com/IBM/go-sdk-core/v5` from 5.18.5 to 5.19.0
- [Release notes](https://github.com/IBM/go-sdk-core/releases)
- [Changelog](https://github.com/IBM/go-sdk-core/blob/main/CHANGELOG.md)
- [Commits](IBM/go-sdk-core@v5.18.5...v5.19.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.92 to 1.63.100
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.92...v1.63.100)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.7 to 1.18.8
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.7...config/v1.18.8)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ecr/v1.41.1...service/s3/v1.42.0)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.49.1 to 1.50.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/ssm/v1.49.1...service/s3/v1.50.0)

Updates `github.com/civo/civogo` from 0.3.94 to 0.3.95
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.94...v0.3.95)

Updates `github.com/digitalocean/godo` from 1.138.0 to 1.141.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.138.0...v1.141.0)

Updates `github.com/miekg/dns` from 1.1.63 to 1.1.64
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.63...v1.1.64)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.85.0 to 65.87.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.85.0...v65.87.0)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1115 to 1.0.1129
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1129)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1115 to 1.0.1128
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1128)

Updates `go.etcd.io/etcd/client/v3` from 3.5.19 to 3.5.20
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.19...v3.5.20)

Updates `golang.org/x/net` from 0.36.0 to 0.37.0
- [Commits](golang/net@v0.36.0...v0.37.0)

Updates `golang.org/x/text` from 0.22.0 to 0.23.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.22.0...v0.23.0)

Updates `google.golang.org/api` from 0.223.0 to 0.227.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.223.0...v0.227.0)

Updates `k8s.io/api` from 0.32.2 to 0.32.3
- [Commits](kubernetes/api@v0.32.2...v0.32.3)

Updates `k8s.io/apimachinery` from 0.32.2 to 0.32.3
- [Commits](kubernetes/apimachinery@v0.32.2...v0.32.3)

Updates `k8s.io/client-go` from 0.32.2 to 0.32.3
- [Changelog](https://github.com/kubernetes/client-go/blob/master/CHANGELOG.md)
- [Commits](kubernetes/client-go@v0.32.2...v0.32.3)

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM-Cloud/ibm-cloud-cli-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/IBM/go-sdk-core/v5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: k8s.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/apimachinery
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: k8s.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

feat: added expose internal ipv6 flag

fix: removing fmt.Printf

fix: fixing ci lint

docs: added documentation in node source

edited docs and made new test

added warn log

detailed documentation with no-expose

added new tests to handle edge case

renaming variable

removing reduntant code

fix(chart): add missing types for empty values (kubernetes-sigs#5207)

* fix(chart): add missing types for empty values

Signed-off-by: t3mi <[email protected]>

* fix(chart): add one more space before comment

Signed-off-by: t3mi <[email protected]>

* chore: add changelog entry

Signed-off-by: t3mi <[email protected]>

* fix: use default value for service account token

Signed-off-by: t3mi <[email protected]>

* fix: tests for new default values

Signed-off-by: t3mi <[email protected]>

* chore: add one more changelog entry

Signed-off-by: t3mi <[email protected]>

---------

Signed-off-by: t3mi <[email protected]>

fix(node): logger test fixed (kubernetes-sigs#5232)

Signed-off-by: ivan katliarchuk <[email protected]>

docs: Fix typo: grcp → grpc.

chore(deps): bump the dev-dependencies group across 1 directory with 17 updates

Bumps the dev-dependencies group with 15 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/IBM/networking-go-sdk](https://github.com/IBM/networking-go-sdk) | `0.51.2` | `0.51.3` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.100` | `1.63.103` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.29.9` | `1.29.12` |
| [github.com/civo/civogo](https://github.com/civo/civogo) | `0.3.95` | `0.3.96` |
| [github.com/digitalocean/godo](https://github.com/digitalocean/godo) | `1.141.0` | `1.142.0` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.87.0` | `65.88.0` |
| [github.com/projectcontour/contour](https://github.com/projectcontour/contour) | `1.30.2` | `1.30.3` |
| [github.com/scaleway/scaleway-sdk-go](https://github.com/scaleway/scaleway-sdk-go) | `1.0.0-beta.32` | `1.0.0-beta.33` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1129` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1128` | `1.0.1134` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1115` | `1.0.1132` |
| [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd) | `3.5.20` | `3.5.21` |
| [google.golang.org/api](https://github.com/googleapis/google-api-go-client) | `0.227.0` | `0.228.0` |
| [istio.io/api](https://github.com/istio/api) | `1.25.0` | `1.25.1` |
| [istio.io/client-go](https://github.com/istio/client-go) | `1.25.0` | `1.25.1` |

Updates `github.com/IBM/networking-go-sdk` from 0.51.2 to 0.51.3
- [Release notes](https://github.com/IBM/networking-go-sdk/releases)
- [Changelog](https://github.com/IBM/networking-go-sdk/blob/master/CHANGELOG.md)
- [Commits](IBM/networking-go-sdk@v0.51.2...v0.51.3)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.100 to 1.63.103
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.100...v1.63.103)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.29.9 to 1.29.12
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.29.9...config/v1.29.12)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.62 to 1.17.65
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@credentials/v1.17.62...credentials/v1.17.65)

Updates `github.com/civo/civogo` from 0.3.95 to 0.3.96
- [Release notes](https://github.com/civo/civogo/releases)
- [Changelog](https://github.com/civo/civogo/blob/master/changelog.yml)
- [Commits](civo/civogo@v0.3.95...v0.3.96)

Updates `github.com/digitalocean/godo` from 1.141.0 to 1.142.0
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](digitalocean/godo@v1.141.0...v1.142.0)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.87.0 to 65.88.0
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.87.0...v65.88.0)

Updates `github.com/projectcontour/contour` from 1.30.2 to 1.30.3
- [Release notes](https://github.com/projectcontour/contour/releases)
- [Changelog](https://github.com/projectcontour/contour/blob/main/RELEASES.md)
- [Commits](projectcontour/contour@v1.30.2...v1.30.3)

Updates `github.com/scaleway/scaleway-sdk-go` from 1.0.0-beta.32 to 1.0.0-beta.33
- [Release notes](https://github.com/scaleway/scaleway-sdk-go/releases)
- [Changelog](https://github.com/scaleway/scaleway-sdk-go/blob/master/CHANGELOG.md)
- [Commits](scaleway/scaleway-sdk-go@v1.0.0-beta.32...v1.0.0-beta.33)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1129 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1129...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1128 to 1.0.1134
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1128...v1.0.1134)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns` from 1.0.1115 to 1.0.1132
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1115...v1.0.1132)

Updates `go.etcd.io/etcd/client/v3` from 3.5.20 to 3.5.21
- [Release notes](https://github.com/etcd-io/etcd/releases)
- [Commits](etcd-io/etcd@v3.5.20...v3.5.21)

Updates `golang.org/x/net` from 0.37.0 to 0.38.0
- [Commits](golang/net@v0.37.0...v0.38.0)

Updates `google.golang.org/api` from 0.227.0 to 0.228.0
- [Release notes](https://github.com/googleapis/google-api-go-client/releases)
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md)
- [Commits](googleapis/google-api-go-client@v0.227.0...v0.228.0)

Updates `istio.io/api` from 1.25.0 to 1.25.1
- [Commits](istio/api@1.25.0...1.25.1)

Updates `istio.io/client-go` from 1.25.0 to 1.25.1
- [Commits](istio/client-go@1.25.0...1.25.1)

---
updated-dependencies:
- dependency-name: github.com/IBM/networking-go-sdk
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/civo/civogo
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/projectcontour/contour
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/scaleway/scaleway-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: go.etcd.io/etcd/client/v3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: google.golang.org/api
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: istio.io/api
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: istio.io/client-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore: add se for nlb, alb in thailand region

chore(code-cleanup): move logic away from main.go add tests (kubernetes-sigs#5222)

* feat(code cleanup): remove from main.go

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(code-cleanup): move logic away from main.go add tests

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

docs(proposal): externaldns api graduation to beta (kubernetes-sigs#5079)

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Signed-off-by: ivan katliarchuk <[email protected]>

* docs(proposal): externaldns api graduation to beta

Co-authored-by: Michel Loiseleur <[email protected]>

* docs(proposal): externaldns api graduation to beta

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(helm): added missing schema values (kubernetes-sigs#5228)

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

* fix(helm): added missing schema values

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

chore(ci): update linter to v2.0.2

feat(pihole): add optional support for v6 (kubernetes-sigs#5226)

* Pi hole V6 impl

* Code Review Part One

* Fix Go Lint

* Regenerate Flags file

* Increase code coverage 1/2

* Increase code coverage 2/2

* Fix merge conflict => Provider init move from main.go to execute.go

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

fix(cloudflare): custom hostnames edge-cases causing duplicates

syntax/style

Use %q log fmt for cloudflare provider code

move custom hostnames related submitChanges() implementation to a separate method submitCustomHostnameChanges(); extend truncated logging

use maps for DNS records getRecordID() and custom hostnames getCustomHostname() for faster lookups

types for records/custom hostnames maps

tidy up using underlying maps for dns records and custom hostnames

style/naming

fix private names

combine unnecessarily separated conditions

feat(cloudflare): multiple custom hostnames support

remove redunaant custom hostnames sort

rename variables with ambiguous "endpoint" names

Update cloudflare.md

split long lines

[attempt to] improve nested conditions readability for cloudflare tests failures scenarios

add test for logging error when creating endpoint and ignoring too long record name (shouldn't happen)

docs: update link to Anexia webhook provider

chore(deps): bump the dev-dependencies group across 1 directory with 2 updates

Bumps the dev-dependencies group with 2 updates in the / directory: [renovatebot/github-action](https://github.com/renovatebot/github-action) and [actions/setup-python](https://github.com/actions/setup-python).

Updates `renovatebot/github-action` from 41.0.17 to 41.0.18
- [Release notes](https://github.com/renovatebot/github-action/releases)
- [Changelog](https://github.com/renovatebot/github-action/blob/main/CHANGELOG.md)
- [Commits](renovatebot/github-action@v41.0.17...v41.0.18)

Updates `actions/setup-python` from 5.4.0 to 5.5.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](actions/setup-python@4237552...8d9ed9a)

---
updated-dependencies:
- dependency-name: renovatebot/github-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

feat(source): optional exclusion of unschedulable nodes (kubernetes-sigs#5045)

* feat(source/node): Make exclusion of unschedulable Nodes configurable

This fixes a behavioral regression introduced in kubernetes-sigs#4761, where
nodes that were previously added to DNS are removed when they are considered
unschedulable, for example due to automated maintenance tasks.

This change will introduce a new flag called `exclude-unschedulable`, which
defaults to `true` in order to keep in line with the current behavior.
However, it would also be reasonable to restore the initial behavior before

* Allow testing for expected log entries in testNodeSourceEndpoints

This commit adds the required logic to be able to test for
the existence (and absence) of certain log messages
in testNodeSourceEndpoints. As an example, this is implemented
for the tests around excludeUnschedulable.

A side effect of using LogsToBuffer is that tests can't run in
parallel due to the log buffer being shared across all
parallel test cases. As such, these specific tests are now executed
one after another.

* Ensure logging is only hooked for tests that require it

* Document new exclude-unschedulable flag for nodes source

chore(deps): bump the dev-dependencies group across 1 directory with 19 updates

Bumps the dev-dependencies group with 14 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [github.com/Azure/azure-sdk-for-go/sdk/azcore](https://github.com/Azure/azure-sdk-for-go) | `1.17.1` | `1.18.0` |
| [github.com/aliyun/alibaba-cloud-sdk-go](https://github.com/aliyun/alibaba-cloud-sdk-go) | `1.63.103` | `1.63.104` |
| [github.com/aws/aws-sdk-go-v2/config](https://github.com/aws/aws-sdk-go-v2) | `1.29.12` | `1.29.13` |
| [github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue](https://github.com/aws/aws-sdk-go-v2) | `1.18.8` | `1.18.9` |
| [github.com/aws/aws-sdk-go-v2/service/route53](https://github.com/aws/aws-sdk-go-v2) | `1.50.0` | `1.51.0` |
| [github.com/aws/aws-sdk-go-v2/service/servicediscovery](https://github.com/aws/aws-sdk-go-v2) | `1.35.1` | `1.35.2` |
| [github.com/linode/linodego](https://github.com/linode/linodego) | `1.48.1` | `1.49.0` |
| [github.com/miekg/dns](https://github.com/miekg/dns) | `1.1.64` | `1.1.65` |
| [github.com/oracle/oci-go-sdk/v65](https://github.com/oracle/oci-go-sdk) | `65.88.0` | `65.88.1` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1134` | `1.0.1140` |
| [github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod](https://github.com/tencentcloud/tencentcloud-sdk-go) | `1.0.1134` | `1.0.1136` |
| [golang.org/x/net](https://github.com/golang/net) | `0.38.0` | `0.39.0` |
| [golang.org/x/oauth2](https://github.com/golang/oauth2) | `0.28.0` | `0.29.0` |
| gopkg.in/ns1/ns1-go.v2 | `2.13.0` | `2.14.1` |

Updates `github.com/Azure/azure-sdk-for-go/sdk/azcore` from 1.17.1 to 1.18.0
- [Release notes](https://github.com/Azure/azure-sdk-for-go/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-go/blob/main/documentation/release.md)
- [Commits](Azure/azure-sdk-for-go@sdk/azcore/v1.17.1...sdk/azcore/v1.18.0)

Updates `github.com/aliyun/alibaba-cloud-sdk-go` from 1.63.103 to 1.63.104
- [Release notes](https://github.com/aliyun/alibaba-cloud-sdk-go/releases)
- [Changelog](https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/ChangeLog.txt)
- [Commits](aliyun/alibaba-cloud-sdk-go@v1.63.103...v1.63.104)

Updates `github.com/aws/aws-sdk-go-v2/config` from 1.29.12 to 1.29.13
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@config/v1.29.12...config/v1.29.13)

Updates `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.65 to 1.17.66
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@credentials/v1.17.65...credentials/v1.17.66)

Updates `github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue` from 1.18.8 to 1.18.9
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/config/v1.18.9/CHANGELOG.md)
- [Commits](aws/aws-sdk-go-v2@config/v1.18.8...config/v1.18.9)

Updates `github.com/aws/aws-sdk-go-v2/service/dynamodb` from 1.42.0 to 1.42.1
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/s3/v1.42.0...service/s3/v1.42.1)

Updates `github.com/aws/aws-sdk-go-v2/service/route53` from 1.50.0 to 1.51.0
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/s3/v1.50.0...service/s3/v1.51.0)

Updates `github.com/aws/aws-sdk-go-v2/service/servicediscovery` from 1.35.1 to 1.35.2
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/kms/v1.35.1...service/ecr/v1.35.2)

Updates `github.com/aws/aws-sdk-go-v2/service/sts` from 1.33.17 to 1.33.18
- [Release notes](https://github.com/aws/aws-sdk-go-v2/releases)
- [Changelog](https://github.com/aws/aws-sdk-go-v2/blob/main/changelog-template.json)
- [Commits](aws/aws-sdk-go-v2@service/sns/v1.33.17...service/sns/v1.33.18)

Updates `github.com/linode/linodego` from 1.48.1 to 1.49.0
- [Release notes](https://github.com/linode/linodego/releases)
- [Commits](linode/linodego@v1.48.1...v1.49.0)

Updates `github.com/miekg/dns` from 1.1.64 to 1.1.65
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](miekg/dns@v1.1.64...v1.1.65)

Updates `github.com/oracle/oci-go-sdk/v65` from 65.88.0 to 65.88.1
- [Release notes](https://github.com/oracle/oci-go-sdk/releases)
- [Changelog](https://github.com/oracle/oci-go-sdk/blob/master/CHANGELOG.md)
- [Commits](oracle/oci-go-sdk@v65.88.0...v65.88.1)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common` from 1.0.1134 to 1.0.1140
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1134...v1.0.1140)

Updates `github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod` from 1.0.1134 to 1.0.1136
- [Commits](TencentCloud/tencentcloud-sdk-go@v1.0.1134...v1.0.1136)

Updates `golang.org/x/net` from 0.38.0 to 0.39.0
- [Commits](golang/net@v0.38.0...v0.39.0)

Updates `golang.org/x/oauth2` from 0.28.0 to 0.29.0
- [Commits](golang/oauth2@v0.28.0...v0.29.0)

Updates `golang.org/x/sync` from 0.12.0 to 0.13.0
- [Commits](golang/sync@v0.12.0...v0.13.0)

Updates `golang.org/x/text` from 0.23.0 to 0.24.0
- [Release notes](https://github.com/golang/text/releases)
- [Commits](golang/text@v0.23.0...v0.24.0)

Updates `gopkg.in/ns1/ns1-go.v2` from 2.13.0 to 2.14.1

---
updated-dependencies:
- dependency-name: github.com/Azure/azure-sdk-for-go/sdk/azcore
  dependency-version: 1.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aliyun/alibaba-cloud-sdk-go
  dependency-version: 1.63.104
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/config
  dependency-version: 1.29.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/credentials
  dependency-version: 1.17.66
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/feature/dynamodb/attributevalue
  dependency-version: 1.18.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/dynamodb
  dependency-version: 1.42.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/route53
  dependency-version: 1.51.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/servicediscovery
  dependency-version: 1.35.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/aws/aws-sdk-go-v2/service/sts
  dependency-version: 1.33.18
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/linode/linodego
  dependency-version: 1.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: github.com/miekg/dns
  dependency-version: 1.1.65
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/oracle/oci-go-sdk/v65
  dependency-version: 65.88.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common
  dependency-version: 1.0.1140
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/dnspod
  dependency-version: 1.0.1136
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/net
  dependency-version: 0.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/oauth2
  dependency-version: 0.29.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/sync
  dependency-version: 0.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: golang.org/x/text
  dependency-version: 0.24.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: gopkg.in/ns1/ns1-go.v2
  dependency-version: 2.14.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>

chore(helm): add validation for prefix and suffix and capture regression (kubernetes-sigs#5250)

* chore(helm): add valiation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add valiation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation.tpl and capture regression

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(helm): add validation.tpl and capture regression

Co-authored-by: Michel Loiseleur <[email protected]>

* chore(helm): add validation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation.tpl and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(helm): add validation for prefix and suffix and capture regression

Co-authored-by: Steve Hipwell <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>
Co-authored-by: Michel Loiseleur <[email protected]>
Co-authored-by: Steve Hipwell <[email protected]>

chore(ci): fix random data race failure on source/node test

only consider accepted gateway routes if the condition generation matches the current one

use route parentRef from spec instead of observedGeneration to select correct status conditions to evaluate

update all route tests to have a valid spec.parentRef entry

add missing lookup for TLSRoute

update gatewayRoute to contain spec.parentRefs instead of extracting that directly from each route during the resolve stage

update comment on gwRouteIsAccepted

validate group and kind on the spec.parentRef. Move check into gwRouteHasParentRef

remove unnecessary variable

chore: Release Helm chart v1.16.1

Signed-off-by: Steve Hipwell <[email protected]>

fix cloudflare regional hostnames

Implements create & delete of regional hostnames for A, AAAA & CNAME
records.
Implements "external-dns.alpha.kubernetes.io/cloudflare-region-key"
annotation.

add tests & fixes for dataLocalizationRegionalHostnamesChanges()

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>

changes to goccy yaml

Signed-off-by: Raffaele Di Fazio <[email protected]>

use json to unmarshal json

Signed-off-by: Raffaele Di Fazio <[email protected]>

chore(dependencies): update toools versions (kubernetes-sigs#5252)

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

* chore(dependencies): update toools versions

Signed-off-by: ivan katliarchuk <[email protected]>

---------

Signed-off-by: ivan katliarchuk <[email protected]>

chore(source): code cleanup

Signed-off-by: ivan katliarchuk <[email protected]>
JesusMtnez pushed a commit to JesusMtnez/homelab that referenced this pull request May 29, 2025
…o v0.16.1 (#667)

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.15.1` -> `v0.16.1` |

---

### Release Notes

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

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

[Compare Source](kubernetes-sigs/external-dns@v0.16.0...v0.16.1)

This release fixes the breaking change introduced in v0.16.0 for Cloudflare.

:warning: New features on Cloudflare, custom and regional hostnames have some known issues, see [#&#8203;5175](kubernetes-sigs/external-dns#5175) and [#&#8203;5183](kubernetes-sigs/external-dns#5183)

:warning: OpenStack designate in-tree provider will be removed in the next version. There is now a [webhook provider](https://github.com/inovex/external-dns-openstack-webhook).

:information_source: With v0.16.0, a new option on TXT Registry is available to use only new format ([#&#8203;4946](kubernetes-sigs/external-dns#4946)). Previous format will be removed in the next release ([#&#8203;5172](kubernetes-sigs/external-dns#5172)).

#### 🐛 Bug fixes

-   fix(cloudflare): optional custom hostnames by [@&#8203;mrozentsvayg](https://github.com/mrozentsvayg) in kubernetes-sigs/external-dns#5146
-   fix(source): pass GatewayName to config by [@&#8203;buroa](https://github.com/buroa) in kubernetes-sigs/external-dns#5169
-   fix(cloudflare): infinite loop with more than 50 custom hostnames by [@&#8203;mrozentsvayg](https://github.com/mrozentsvayg) in kubernetes-sigs/external-dns#5181

#### 📦 Others

-   chore: update OWNERS with required config file by [@&#8203;mloiseleur](https://github.com/mloiseleur) in kubernetes-sigs/external-dns#5164

**Full Changelog**: kubernetes-sigs/external-dns@v0.16.0...v0.16.1

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

[Compare Source](kubernetes-sigs/external-dns@v0.15.1...v0.16.0)

#### 💥 Breaking Changes

There is a [breaking change on Cloudflare](kubernetes-sigs/external-dns#5166) with this release. It requires Cloudflare for Saas.

#### 🚀 Features

-   feat: add dreamhost webook provider to readme  ([#&#8203;5015](kubernetes-sigs/external-dns#5015)) [@&#8203;asymingt](https://github.com/asymingt)
-   feat: Add F5 TransportServer source  ([#&#8203;4944](kubernetes-sigs/external-dns#4944)) [@&#8203;visokoo](https://github.com/visokoo)
-   feat(chart): allow to run tpl on `ServiceAccount` annotations ([#&#8203;4958](kubernetes-sigs/external-dns#4958)) ([#&#8203;4958](kubernetes-sigs/external-dns#4958)) [@&#8203;fcrespofastly](https://github.com/fcrespofastly)
-   feat(cloudflare): custom hostname and fix apex  ([#&#8203;5087](kubernetes-sigs/external-dns#5087)) [@&#8203;mrozentsvayg](https://github.com/mrozentsvayg)
-   feat(deps): added renovate config for custom regexes  ([#&#8203;4978](kubernetes-sigs/external-dns#4978)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   feat: don't discard klog logs at the highest log levels (debug and trace)  ([#&#8203;4961](kubernetes-sigs/external-dns#4961)) [@&#8203;dmarkhas](https://github.com/dmarkhas)
-   feat(pdns): add validation for MX and SRV records  ([#&#8203;4871](kubernetes-sigs/external-dns#4871)) [@&#8203;julillae](https://github.com/julillae)
-   feat(rfc2136): support multiple hosts  ([#&#8203;4653](kubernetes-sigs/external-dns#4653)) [@&#8203;Jeremy-Boyle](https://github.com/Jeremy-Boyle)
-   feat(service): listen to endpoint changes  ([#&#8203;5085](kubernetes-sigs/external-dns#5085)) [@&#8203;dmarkhas](https://github.com/dmarkhas)
-   feat(source): allow to register all pods and their associated PTR record  ([#&#8203;4782](kubernetes-sigs/external-dns#4782)) [@&#8203;foyerunix](https://github.com/foyerunix)
-   feat(txt-registry): add option to use only new format ([#&#8203;4946](kubernetes-sigs/external-dns#4946)) [@&#8203;malpou](https://github.com/malpou)

#### 🐛 Bug fixes

-   fix(aes-encryption): support plain txt and url safe base64 strings  ([#&#8203;4980](kubernetes-sigs/external-dns#4980)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   fix(aws-provider): ListTagsForResource incorrect zone-id handling  ([#&#8203;5029](kubernetes-sigs/external-dns#5029)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   fix(chart): non-string types on svcaccount annotations ([#&#8203;5067](kubernetes-sigs/external-dns#5067)) [@&#8203;hjoshi123](https://github.com/hjoshi123)
-   fix(chart): regression with affinity.nodeAffinity getting ignored  ([#&#8203;5046](kubernetes-sigs/external-dns#5046)) [@&#8203;mkhpalm](https://github.com/mkhpalm)
-   fix(chart): update rbac for F5 transportserver source ([#&#8203;5066](kubernetes-sigs/external-dns#5066)) ([#&#8203;5066](kubernetes-sigs/external-dns#5066)) [@&#8203;visokoo](https://github.com/visokoo)
-   fix(cloudflare): add more descriptive log message  ([#&#8203;5047](kubernetes-sigs/external-dns#5047)) [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay)
-   fix(cloudflare): use softerror on internal server error with api  ([#&#8203;4931](kubernetes-sigs/external-dns#4931)) [@&#8203;vishuvenu](https://github.com/vishuvenu)
-   fix(dedup): records with different type are not duplicates  ([#&#8203;4889](kubernetes-sigs/external-dns#4889)) [@&#8203;jtszalay](https://github.com/jtszalay)
-   fix(docs): aws tutorial broken internal markdown links  ([#&#8203;5036](kubernetes-sigs/external-dns#5036)) [@&#8203;strophy](https://github.com/strophy)
-   fix:  do not merge CNAME with multiple targets  ([#&#8203;4856](kubernetes-sigs/external-dns#4856)) [@&#8203;dtuck9](https://github.com/dtuck9)
-   fix(f5-virtualserver): skip endpoint creation when VirtualServer is not ready ([#&#8203;4996](kubernetes-sigs/external-dns#4996)) [@&#8203;mikejoh](https://github.com/mikejoh)
-   fix(godaddy): Handle missing Retry-After header gracefully  ([#&#8203;4866](kubernetes-sigs/external-dns#4866)) [@&#8203;alexstojda](https://github.com/alexstojda)
-   fix(oci): records with multiple IP addresses  ([#&#8203;4993](kubernetes-sigs/external-dns#4993)) [@&#8203;jrosinsk](https://github.com/jrosinsk)
-   fix(ovh): cache refresh and duplicates processing  ([#&#8203;4932](kubernetes-sigs/external-dns#4932)) [@&#8203;nmaupu](https://github.com/nmaupu)
-   fix(registry): handle empty targets in TXT records logging an error  ([#&#8203;5149](kubernetes-sigs/external-dns#5149)) [@&#8203;saikatharryc](https://github.com/saikatharryc)
-   fix(source): allow ipv4-mapped ipv6 addresses  ([#&#8203;4943](kubernetes-sigs/external-dns#4943)) [@&#8203;buroa](https://github.com/buroa)
-   fix(source): debug log on gateway target detection  ([#&#8203;5096](kubernetes-sigs/external-dns#5096)) [@&#8203;drcapulet](https://github.com/drcapulet)
-   Fix spelling in webhook OpenAPI spec  ([#&#8203;5038](kubernetes-sigs/external-dns#5038)) [@&#8203;claycooper](https://github.com/claycooper)
-   fix: use informer for istio gateways  ([#&#8203;4522](kubernetes-sigs/external-dns#4522)) [@&#8203;woehrl01](https://github.com/woehrl01)

#### 📝 Documentation

-   docs: add deprecation policy ([#&#8203;5053](kubernetes-sigs/external-dns#5053)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   docs: add staging images to release process ([#&#8203;5050](kubernetes-sigs/external-dns#5050)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   docs: fix typo on aws tutorial  ([#&#8203;5070](kubernetes-sigs/external-dns#5070)) [@&#8203;Ileriayo](https://github.com/Ileriayo)
-   docs: fix typos in tutorials  ([#&#8203;4969](kubernetes-sigs/external-dns#4969)) [@&#8203;mloiseleur](https://github.com/mloiseleur)
-   docs(Microsoft DNS): improve instructions  ([#&#8203;4893](kubernetes-sigs/external-dns#4893)) [@&#8203;TomyLobo](https://github.com/TomyLobo)
-   docs(proposal): standartise date format  ([#&#8203;5128](kubernetes-sigs/external-dns#5128)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   docs(proposal): update template with statuses  ([#&#8203;5098](kubernetes-sigs/external-dns#5098)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   docs(provider): add ClouDNS to README  ([#&#8203;5065](kubernetes-sigs/external-dns#5065)) [@&#8203;rwunderer](https://github.com/rwunderer)
-   docs(README): fix link to dev guide  ([#&#8203;5116](kubernetes-sigs/external-dns#5116)) [@&#8203;masterkain](https://github.com/masterkain)
-   docs(registry): fix managed-record-type argument  ([#&#8203;5102](kubernetes-sigs/external-dns#5102)) [@&#8203;splitice](https://github.com/splitice)
-   docs: update and refactor contribution part ([#&#8203;5073](kubernetes-sigs/external-dns#5073)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   ci(docs): add markdown linters and editorconfig ([#&#8203;5055](kubernetes-sigs/external-dns#5055)) [@&#8203;mloiseleur](https://github.com/mloiseleur)
-   Improve sources' docs to mention '--managed-record-types'  ([#&#8203;4882](kubernetes-sigs/external-dns#4882)) [@&#8203;juan-vg](https://github.com/juan-vg)

#### 📦 Others

-   add: auto label source and providers  ([#&#8203;5158](kubernetes-sigs/external-dns#5158)) [@&#8203;szuecs](https://github.com/szuecs)
-   Add OpenStack Designate webook provider to readme  ([#&#8203;5115](kubernetes-sigs/external-dns#5115)) [@&#8203;frittentheke](https://github.com/frittentheke)
-   chore(ci): fix and sort changelog  ([#&#8203;4979](kubernetes-sigs/external-dns#4979)) [@&#8203;mloiseleur](https://github.com/mloiseleur) dependabot
-   chore(ci): fix failing test, upgrade to go 1.23.5 and linter to v1.63  ([#&#8203;5013](kubernetes-sigs/external-dns#5013)) [@&#8203;mloiseleur](https://github.com/mloiseleur)
-   chore(ci): remove too slow test  ([#&#8203;5014](kubernetes-sigs/external-dns#5014)) [@&#8203;mloiseleur](https://github.com/mloiseleur)
-   chore(deps): bump actions/setup-python from 5.3.0 to 5.4.0 in the dev-dependencies group  ([#&#8203;5041](kubernetes-sigs/external-dns#5041)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump azure/setup-helm from 4.2.0 to 4.3.0 in the dev-dependencies group  ([#&#8203;5108](kubernetes-sigs/external-dns#5108)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump helm/kind-action from 1.10.0 to 1.11.0 in the dev-dependencies group  ([#&#8203;4956](kubernetes-sigs/external-dns#4956)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump helm/kind-action from 1.11.0 to 1.12.0 in the dev-dependencies group  ([#&#8203;4972](kubernetes-sigs/external-dns#4972)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump nosborn/github-action-markdown-cli from 3.3.0 to 3.4.0 in the dev-dependencies group  ([#&#8203;5083](kubernetes-sigs/external-dns#5083)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 14 updates  ([#&#8203;4976](kubernetes-sigs/external-dns#4976)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 18 updates  ([#&#8203;5040](kubernetes-sigs/external-dns#5040)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 20 updates  ([#&#8203;4999](kubernetes-sigs/external-dns#4999)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 21 updates  ([#&#8203;5089](kubernetes-sigs/external-dns#5089)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 22 updates  ([#&#8203;5062](kubernetes-sigs/external-dns#5062)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 23 updates  ([#&#8203;5145](kubernetes-sigs/external-dns#5145)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 25 updates  ([#&#8203;5023](kubernetes-sigs/external-dns#5023)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 5 updates  ([#&#8203;4987](kubernetes-sigs/external-dns#4987)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group across 1 directory with 7 updates  ([#&#8203;5125](kubernetes-sigs/external-dns#5125)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group with 20 updates  ([#&#8203;5109](kubernetes-sigs/external-dns#5109)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group with 2 updates  ([#&#8203;5022](kubernetes-sigs/external-dns#5022)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group with 3 updates  ([#&#8203;5112](kubernetes-sigs/external-dns#5112)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(deps): bump the dev-dependencies group with 4 updates  ([#&#8203;4988](kubernetes-sigs/external-dns#4988)) [@&#8203;dependabot](https://github.com/dependabot)
-   chore(docs): docs/flags.md generation  ([#&#8203;4983](kubernetes-sigs/external-dns#4983)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   chore(filter-tags): pre-process filter tags  ([#&#8203;5063](kubernetes-sigs/external-dns#5063)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   chore(makefile): add helper and document targets  ([#&#8203;5093](kubernetes-sigs/external-dns#5093)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   chore(makefile): simplify coverage script  ([#&#8203;5105](kubernetes-sigs/external-dns#5105)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   chore(provider-aws): improve canonicalHostedZone handling  ([#&#8203;5031](kubernetes-sigs/external-dns#5031)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   chore(release): publish chart v1.15.2  ([#&#8203;5094](kubernetes-sigs/external-dns#5094)) [@&#8203;stevehipwell](https://github.com/stevehipwell)
-   chore: update maintainers/reviewers  ([#&#8203;5020](kubernetes-sigs/external-dns#5020)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   chore: upgrade ExternalDNS to go 1.24  ([#&#8203;5106](kubernetes-sigs/external-dns#5106)) [@&#8203;mloiseleur](https://github.com/mloiseleur)
-   kustomize-v0.15.1  ([#&#8203;4966](kubernetes-sigs/external-dns#4966)) [@&#8203;Raffo](https://github.com/Raffo)
-   Release Helm chart for `v0.15.1`  ([#&#8203;5028](kubernetes-sigs/external-dns#5028)) [@&#8203;stevehipwell](https://github.com/stevehipwell)
-   replace all versions to v0.15.1  ([#&#8203;4973](kubernetes-sigs/external-dns#4973)) [@&#8203;Raffo](https://github.com/Raffo)
-   test(cloudflare): add scenarios on submitChanges  ([#&#8203;5054](kubernetes-sigs/external-dns#5054)) [@&#8203;AndrewCharlesHay](https://github.com/AndrewCharlesHay)
-   test(domain-filter): simple filters on domain exclusion ([#&#8203;5064](kubernetes-sigs/external-dns#5064)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)
-   test(provider): tags filter coverage and benchmark  ([#&#8203;5060](kubernetes-sigs/external-dns#5060)) [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk)

#### New Contributors

-   [@&#8203;juan-vg](https://github.com/juan-vg) made their first contribution in kubernetes-sigs/external-dns#4882
-   [@&#8203;dmarkhas](https://github.com/dmarkhas) made their first contribution in kubernetes-sigs/external-dns#4961
-   [@&#8203;buroa](https://github.com/buroa) made their first contribution in kubernetes-sigs/external-dns#4943
-   [@&#8203;fcrespofastly](https://github.com/fcrespofastly) made their first contribution in kubernetes-sigs/external-dns#4958
-   [@&#8203;nmaupu](https://github.com/nmaupu) made their first contribution in kubernetes-sigs/external-dns#4932
-   [@&#8203;dtuck9](https://github.com/dtuck9) made their first contribution in kubernetes-sigs/external-dns#4856
-   [@&#8203;asymingt](https://github.com/asymingt) made their first contribution in kubernetes-sigs/external-dns#5015
-   [@&#8203;alexstojda](https://github.com/alexstojda) made their first contribution in kubernetes-sigs/external-dns#4866
-   [@&#8203;visokoo](https://github.com/visokoo) made their first contribution in kubernetes-sigs/external-dns#4944
-   [@&#8203;vishuvenu](https://github.com/vishuvenu) made their first contribution in kubernetes-sigs/external-dns#4931
-   [@&#8203;TomyLobo](https://github.com/TomyLobo) made their first contribution in kubernetes-sigs/external-dns#4893
-   [@&#8203;strophy](https://github.com/strophy) made their first contribution in kubernetes-sigs/external-dns#5036
-   [@&#8203;malpou](https://github.com/malpou) made their first contribution in kubernetes-sigs/external-dns#4946
-   [@&#8203;foyerunix](https://github.com/foyerunix) made their first contribution in kubernetes-sigs/external-dns#4782
-   [@&#8203;rwunderer](https://github.com/rwunderer) made their first contribution in kubernetes-sigs/external-dns#5065
-   [@&#8203;Ileriayo](https://github.com/Ileriayo) made their first contribution in kubernetes-sigs/external-dns#5070
-   [@&#8203;hjoshi123](https://github.com/hjoshi123) made their first contribution in kubernetes-sigs/external-dns#5067
-   [@&#8203;mkhpalm](https://github.com/mkhpalm) made their first contribution in kubernetes-sigs/external-dns#5046
-   [@&#8203;woehrl01](https://github.com/woehrl01) made their first contribution in kubernetes-sigs/external-dns#4522
-   [@&#8203;jtszalay](https://github.com/jtszalay) made their first contribution in kubernetes-sigs/external-dns#4889
-   [@&#8203;splitice](https://github.com/splitice) made their first contribution in kubernetes-sigs/external-dns#5102
-   [@&#8203;drcapulet](https://github.com/drcapulet) made their first contribution in kubernetes-sigs/external-dns#5096
-   [@&#8203;mrozentsvayg](https://github.com/mrozentsvayg) made their first contribution in kubernetes-sigs/external-dns#5087
-   [@&#8203;frittentheke](https://github.com/frittentheke) made their first contribution in kubernetes-sigs/external-dns#5115
-   [@&#8203;masterkain](https://github.com/masterkain) made their first contribution in kubernetes-sigs/external-dns#5116
-   [@&#8203;renanqts](https://github.com/renanqts) made their first contribution in kubernetes-sigs/external-dns#5132
-   [@&#8203;rlees85](https://github.com/rlees85) made their first contribution in kubernetes-sigs/external-dns#5111
-   [@&#8203;stefaneg](https://github.com/stefaneg) made their first contribution in kubernetes-sigs/external-dns#5135
-   [@&#8203;saikatharryc](https://github.com/saikatharryc) made their first contribution in kubernetes-sigs/external-dns#5149

**Full Changelog**: kubernetes-sigs/external-dns@v0.15.1...v0.16.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:eyJjcmVhdGVkSW5WZXIiOiI0MC4wLjAtbmV4dC4xIiwidXBkYXRlZEluVmVyIjoiNDAuMC4wLW5leHQuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwL21pbm9yIl19-->

Reviewed-on: https://codeberg.org/JesusMtnez/homelab/pulls/667
Co-authored-by: JesusMtnez-bot <[email protected]>
Co-committed-by: JesusMtnez-bot <[email protected]>
JesusMtnez added a commit to JesusMtnez/homelab that referenced this pull request May 29, 2025
…o v0.17.0 (#712)

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.16.1` -> `v0.17.0` |

---

### Release Notes

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

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

[Compare Source](kubernetes-sigs/external-dns@v0.16.1...v0.17.0)

#### Global information

:information_source: On Pi Hole, support for v6 has been added. Pi Hole v5 support is deprecated and will be removed in a future version

:information_source: On OVH, the provider has been heavily rewritten. New ACLs are need. See documentation and PR [#&#8203;5143](kubernetes-sigs/external-dns#5143) for details.

:information_source: On IPv6, the [proposal 002](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/proposal/002-internal-ipv6-handling-rollback.md) has been implemented, thanks to [@&#8203;hjoshi123](https://github.com/hjoshi123)

-   ⚠️ In the next release, the default of this new `expose-internal-ipv6` flag will be set to false

⚠️ There is a severe known issue with Active Directory ([#&#8203;5240](kubernetes-sigs/external-dns#5240)) since v0.16.0. PR to fix it ([#&#8203;5385](kubernetes-sigs/external-dns#5385)) is in review

:information_source: The legacy txt-format will be removed in the next minor version ([#&#8203;5172](kubernetes-sigs/external-dns#5172))

-   ⚠️ There is currently no migration script to clean old style txt records. If you need it, if you think you can do it, PRs are welcome.

ℹ️ A new Nomad source may be added to external-dns ([#&#8203;5284](kubernetes-sigs/external-dns#5284))

-   This PR can be merged only after a review and test from real Nomad users

#### 🚀 Features

-   feat: additional template functions by [@&#8203;matkam](https://github.com/matkam) in [#&#8203;3949](kubernetes-sigs/external-dns#3949)
-   feat(banner): standardize user agent and output by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5154](kubernetes-sigs/external-dns#5154)
-   feat(chart): Update image to v0.16.1 by [@&#8203;stevehipwell](https://github.com/stevehipwell) in [#&#8203;5201](kubernetes-sigs/external-dns#5201)
-   feat(cloudflare): multiple custom hostnames support by [@&#8203;mrozentsvayg](https://github.com/mrozentsvayg) in [#&#8203;5239](kubernetes-sigs/external-dns#5239)
-   feat(helm): allow extraArgs to also be a map enabling overrides of individual values by [@&#8203;frittentheke](https://github.com/frittentheke) in [#&#8203;5293](kubernetes-sigs/external-dns#5293)
-   feat: IDNA awareness in the zone finder by [@&#8203;lexisother](https://github.com/lexisother) in [#&#8203;5147](kubernetes-sigs/external-dns#5147)
-   feat(ovh): major rewriting of the provider by [@&#8203;rbeuque74](https://github.com/rbeuque74) in [#&#8203;5143](kubernetes-sigs/external-dns#5143)
-   feat(pihole): add optional support for v6 by [@&#8203;tJouve](https://github.com/tJouve) in [#&#8203;5226](kubernetes-sigs/external-dns#5226)
-   feat(pihole): add support for IPv6 Dual format by [@&#8203;tJouve](https://github.com/tJouve) in [#&#8203;5253](kubernetes-sigs/external-dns#5253)
-   feat(source): optional exclusion of unschedulable nodes by [@&#8203;Hayajiro](https://github.com/Hayajiro) in [#&#8203;5045](kubernetes-sigs/external-dns#5045)
-   feat(source): optional expose of nodes internal ipv6 by [@&#8203;hjoshi123](https://github.com/hjoshi123) in [#&#8203;5192](kubernetes-sigs/external-dns#5192)

#### 🐛 Bug fixes

-   fix(aws): typo on route53 IAM by [@&#8203;tico24](https://github.com/tico24) in [#&#8203;5197](kubernetes-sigs/external-dns#5197)
-   fix(chart): add missing types for empty values by [@&#8203;t3mi](https://github.com/t3mi) in [#&#8203;5207](kubernetes-sigs/external-dns#5207)
-   fix(cloudflare): custom hostnames edge-cases causing duplicates by [@&#8203;mrozentsvayg](https://github.com/mrozentsvayg) in [#&#8203;5183](kubernetes-sigs/external-dns#5183)
-   fix(cloudflare): regional hostnames by [@&#8203;vflaux](https://github.com/vflaux) in [#&#8203;5175](kubernetes-sigs/external-dns#5175)
-   fix(Gateway API): ensure generation match by [@&#8203;davidwin93](https://github.com/davidwin93) in [#&#8203;5241](kubernetes-sigs/external-dns#5241)
-   fix(gateway-api): ensure to use only latest generation with HTTPRoutes by [@&#8203;kashalls](https://github.com/kashalls) in [#&#8203;5349](kubernetes-sigs/external-dns#5349)
-   fix(helm): added missing schema values by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5228](kubernetes-sigs/external-dns#5228)
-   fix(helm): update helm schema by [@&#8203;semnell](https://github.com/semnell) in [#&#8203;5297](kubernetes-sigs/external-dns#5297)
-   fix(log testing): re-use logger library testing functionality by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5368](kubernetes-sigs/external-dns#5368)
-   fix(node): logger test fixed by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5232](kubernetes-sigs/external-dns#5232)
-   fix(ovh): handling capitalized DNS records + prevent panic by [@&#8203;rbeuque74](https://github.com/rbeuque74) in [#&#8203;5390](kubernetes-sigs/external-dns#5390)
-   fix(webhook): api json object plan.Changes case by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5355](kubernetes-sigs/external-dns#5355)
-   fix(zonefinder): handle underscores in dns records by [@&#8203;arthlr](https://github.com/arthlr) in [#&#8203;5281](kubernetes-sigs/external-dns#5281)

#### 📝 Documentation

-   docs(contributing): add conventional commits by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5333](kubernetes-sigs/external-dns#5333)
-   docs(proposal): externaldns api graduation to beta by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5079](kubernetes-sigs/external-dns#5079)
-   docs(rfc2136): fix env variable in the guideline by [@&#8203;riupie](https://github.com/riupie) in [#&#8203;5352](kubernetes-sigs/external-dns#5352)
-   docs(tutorials): add IONOS Cloud  setup tutorial for ExternalDNS by [@&#8203;smilutinovic-ionos](https://github.com/smilutinovic-ionos) in [#&#8203;5364](kubernetes-sigs/external-dns#5364)
-   docs(typo): grcp → grpc by [@&#8203;octo](https://github.com/octo) in [#&#8203;5231](kubernetes-sigs/external-dns#5231)
-   docs: update link to Anexia webhook provider by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5244](kubernetes-sigs/external-dns#5244)
-   docs: update rfc2136 by [@&#8203;BasJ93](https://github.com/BasJ93) in [#&#8203;5325](kubernetes-sigs/external-dns#5325)

#### 📦 Others

-   Add Yandex Cloud Webhook by [@&#8203;ismailbaskin](https://github.com/ismailbaskin) in [#&#8203;5190](kubernetes-sigs/external-dns#5190)
-   chore: add se for nlb, alb in thailand region by [@&#8203;xshot9011](https://github.com/xshot9011) in [#&#8203;5200](kubernetes-sigs/external-dns#5200)
-   chore: fix typo on txtOwnerId comment/description by [@&#8203;lanandra](https://github.com/lanandra) in [#&#8203;5351](kubernetes-sigs/external-dns#5351)
-   chore(ci): fix random data race failure on source/node test by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5268](kubernetes-sigs/external-dns#5268)
-   chore(ci): improve release script by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5394](kubernetes-sigs/external-dns#5394)
-   chore(ci): update linter to v2.0.2 by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5246](kubernetes-sigs/external-dns#5246)
-   chore(code-cleanup): move logic away from main.go add tests by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5222](kubernetes-sigs/external-dns#5222)
-   chore(code): improve some tests + re-order sources flags CLI by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5288](kubernetes-sigs/external-dns#5288)
-   chore(code-quality): added lint checks by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5318](kubernetes-sigs/external-dns#5318)
-   chore(code-quality): providers linter warnings fixes by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5320](kubernetes-sigs/external-dns#5320)
-   chore(code-quality): refactoring and linter fixes by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5374](kubernetes-sigs/external-dns#5374)
-   chore(code-quality): webhook increase code coverage by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5337](kubernetes-sigs/external-dns#5337)
-   chore(crd): use conventional paths and update controller-gen to v0.17.2 by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5287](kubernetes-sigs/external-dns#5287)
-   chore(dependencies): update toools versions by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5252](kubernetes-sigs/external-dns#5252)
-   chore(deps): build with go 1.24.2 by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5306](kubernetes-sigs/external-dns#5306)
-   chore(deps): bump renovatebot/github-action from 41.0.14 to 41.0.16 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5188](kubernetes-sigs/external-dns#5188)
-   chore(deps): bump renovatebot/github-action from 41.0.16 to 41.0.17 in the dev-dependencies group by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5210](kubernetes-sigs/external-dns#5210)
-   chore(deps): bump the dev-dependencies group across 1 directory with 14 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5346](kubernetes-sigs/external-dns#5346)
-   chore(deps): bump the dev-dependencies group across 1 directory with 14 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5382](kubernetes-sigs/external-dns#5382)
-   chore(deps): bump the dev-dependencies group across 1 directory with 17 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5238](kubernetes-sigs/external-dns#5238)
-   chore(deps): bump the dev-dependencies group across 1 directory with 19 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5262](kubernetes-sigs/external-dns#5262)
-   chore(deps): bump the dev-dependencies group across 1 directory with 20 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5211](kubernetes-sigs/external-dns#5211)
-   chore(deps): bump the dev-dependencies group across 1 directory with 21 updates by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5313](kubernetes-sigs/external-dns#5313)
-   chore(deps): bump the dev-dependencies group across 1 directory with 2 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5247](kubernetes-sigs/external-dns#5247)
-   chore(deps): bump the dev-dependencies group across 1 directory with 2 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5301](kubernetes-sigs/external-dns#5301)
-   chore(deps): bump the dev-dependencies group across 1 directory with 2 updates by [@&#8203;app/dependabot](https://github.com/app/dependabot) in [#&#8203;5323](kubernetes-sigs/external-dns#5323)
-   chore(deps): code cleanup, pkg/errors is archived by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5335](kubernetes-sigs/external-dns#5335)
-   chore(deps): switch to goccy yaml by [@&#8203;Raffo](https://github.com/Raffo) in [#&#8203;5292](kubernetes-sigs/external-dns#5292)
-   chore(deps): update linter to v2.1.x by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5366](kubernetes-sigs/external-dns#5366)
-   chore(fqdn-template): fqdn templating move to specific folder and update documentation by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5354](kubernetes-sigs/external-dns#5354)
-   chore(github): add a release template by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5324](kubernetes-sigs/external-dns#5324)
-   chore(helm): add validation for prefix and suffix and capture regression by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5250](kubernetes-sigs/external-dns#5250)
-   chore(openstack designate)!: remove in-tree provider by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5126](kubernetes-sigs/external-dns#5126)
-   chore(providers): rename custom TTL constants to defaultTTL by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5312](kubernetes-sigs/external-dns#5312)
-   chore: Release Helm chart v1.16.1 by [@&#8203;stevehipwell](https://github.com/stevehipwell) in [#&#8203;5270](kubernetes-sigs/external-dns#5270)
-   chore(release): updates kustomize & docs with v0.16.1 by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5184](kubernetes-sigs/external-dns#5184)
-   chore(source): code cleanup by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5304](kubernetes-sigs/external-dns#5304)
-   chore(webhook): bump cenkalti/backoff version by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5342](kubernetes-sigs/external-dns#5342)
-   test: add tests for cloudflare provider by [@&#8203;natitomattis](https://github.com/natitomattis) in [#&#8203;5248](kubernetes-sigs/external-dns#5248)
-   test(log): execute on multiple platforms by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5370](kubernetes-sigs/external-dns#5370)
-   test(log): fix random race detection by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5273](kubernetes-sigs/external-dns#5273)
-   test(source): cover unhappy paths by [@&#8203;linoleparquet](https://github.com/linoleparquet) in [#&#8203;5369](kubernetes-sigs/external-dns#5369)
-   test(source): fix data race on node_test by [@&#8203;mloiseleur](https://github.com/mloiseleur) in [#&#8203;5334](kubernetes-sigs/external-dns#5334)
-   test(source/pod): improve code coverage by [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk) in [#&#8203;5378](kubernetes-sigs/external-dns#5378)
-   test(tlsconfig): add unit tests by [@&#8203;linoleparquet](https://github.com/linoleparquet) in [#&#8203;5381](kubernetes-sigs/external-dns#5381)
-   test(zone_filter): improve coverage from 66.7% to 100% by [@&#8203;upsaurav12](https://github.com/upsaurav12) in [#&#8203;5388](kubernetes-sigs/external-dns#5388)

#### 📦 Docker Image

    docker pull registry.k8s.io/external-dns/external-dns:v0.17.0

#### New Contributors

-   [@&#8203;ismailbaskin](https://github.com/ismailbaskin) made their first contribution in kubernetes-sigs/external-dns#5190
-   [@&#8203;lexisother](https://github.com/lexisother) made their first contribution in kubernetes-sigs/external-dns#5147
-   [@&#8203;tico24](https://github.com/tico24) made their first contribution in kubernetes-sigs/external-dns#5197
-   [@&#8203;t3mi](https://github.com/t3mi) made their first contribution in kubernetes-sigs/external-dns#5207
-   [@&#8203;octo](https://github.com/octo) made their first contribution in kubernetes-sigs/external-dns#5231
-   [@&#8203;xshot9011](https://github.com/xshot9011) made their first contribution in kubernetes-sigs/external-dns#5200
-   [@&#8203;tJouve](https://github.com/tJouve) made their first contribution in kubernetes-sigs/external-dns#5226
-   [@&#8203;Hayajiro](https://github.com/Hayajiro) made their first contribution in kubernetes-sigs/external-dns#5045
-   [@&#8203;davidwin93](https://github.com/davidwin93) made their first contribution in kubernetes-sigs/external-dns#5241
-   [@&#8203;vflaux](https://github.com/vflaux) made their first contribution in kubernetes-sigs/external-dns#5175
-   [@&#8203;arthlr](https://github.com/arthlr) made their first contribution in kubernetes-sigs/external-dns#5281
-   [@&#8203;semnell](https://github.com/semnell) made their first contribution in kubernetes-sigs/external-dns#5297
-   [@&#8203;BasJ93](https://github.com/BasJ93) made their first contribution in kubernetes-sigs/external-dns#5325
-   [@&#8203;natitomattis](https://github.com/natitomattis) made their first contribution in kubernetes-sigs/external-dns#5248
-   [@&#8203;riupie](https://github.com/riupie) made their first contribution in kubernetes-sigs/external-dns#5352
-   [@&#8203;lanandra](https://github.com/lanandra) made their first contribution in kubernetes-sigs/external-dns#5351
-   [@&#8203;smilutinovic-ionos](https://github.com/smilutinovic-ionos) made their first contribution in kubernetes-sigs/external-dns#5364
-   [@&#8203;linoleparquet](https://github.com/linoleparquet) made their first contribution in kubernetes-sigs/external-dns#5369
-   [@&#8203;kashalls](https://github.com/kashalls) made their first contribution in kubernetes-sigs/external-dns#5349
-   [@&#8203;matkam](https://github.com/matkam) made their first contribution in kubernetes-sigs/external-dns#3949
-   [@&#8203;upsaurav12](https://github.com/upsaurav12) made their first contribution in kubernetes-sigs/external-dns#5388

**Full Changelog**: kubernetes-sigs/external-dns@v0.16.1...v0.17.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:eyJjcmVhdGVkSW5WZXIiOiI0MC4xMS4xNSIsInVwZGF0ZWRJblZlciI6IjQwLjExLjE1IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXAvbWlub3IiXX0=-->

Co-authored-by: JesusMtnez <[email protected]>
Reviewed-on: https://codeberg.org/JesusMtnez/homelab/pulls/712
Co-authored-by: JesusMtnez-bot <[email protected]>
Co-committed-by: JesusMtnez-bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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. kind/bug Categorizes issue or PR as related to a bug. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants