Commit Graph

1360 Commits

Author SHA1 Message Date
Ivan Ka
ba64e8bb01
chore(deps): code cleanup, do not use pkg/errors (#5335)
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-04-29 01:17:57 -07:00
ivan katliarchuk
72a761c22b
chore(code-quality): webhook increase code coverage 2025-04-28 10:53:08 +01:00
Ivan Ka
a6243cf6bb
chore(providers): rename custom TTL constants to defaultTTL (#5312)
* chore(provider): inline providers

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(provider): inline providers

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(provider): inline providers

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(provider): inline providers

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(provider): inline providers

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

---------

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-04-27 14:59:25 -07:00
ivan katliarchuk
757a57609f
chore(code-quality): linter warnings fixes
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-04-23 22:03:00 +01:00
tJouve
c49322f7ee
feat(pihole): add support for IPv6 Dual format (#5253)
* Add support of ipv6 dual on pihole provider

* PiHoleV6 : Switch from instrumented_http to httpClient

* Add support of ipv6 dual on pihole provider - extends tests cases

* Switch to net/netip to check ipV6

* Fix linter

* ListRecords should not log filtered records

Should not log records reject by filter on listRecords because PiHole return A and AAAA records. It is normal to filter some records

* Update provider/pihole/clientV6.go

Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>

---------

Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
2025-04-23 05:43:42 -07:00
ivan katliarchuk
abdf8bbc02
chore(refactore): added lint checks
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-04-23 08:22:43 +01:00
Kubernetes Prow Robot
a446408ea4
Merge pull request #5281 from arthlr/fix/zone-finder
fix(zonefinder): handle underscores in dns records
2025-04-16 12:27:17 -07:00
Raffaele Di Fazio
3e9f4642e3 use json to unmarshal json
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2025-04-15 09:30:37 +02:00
Raffaele Di Fazio
b38d6bc867 changes to goccy yaml
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2025-04-15 08:42:00 +02:00
Arthur Le Roux
64f7989628 fix(zonefinder): handle underscores in dns records
Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>
2025-04-13 19:10:26 +02:00
Valentin Flaux
6f65181681
add tests & fixes for dataLocalizationRegionalHostnamesChanges() 2025-04-12 10:59:47 +02:00
Valentin Flaux
c3f0cd668f
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.
2025-04-12 10:59:47 +02:00
Kubernetes Prow Robot
026feab62b
Merge pull request #5239 from conduitxyz/mrozentsvayg/cloudflare-multiple-custom-hostnames
feat(cloudflare): multiple custom hostnames support
2025-04-02 23:58:47 -07:00
Mikhail Rozentsvayg
6808aa3198 add test for logging error when creating endpoint and ignoring too long record name (shouldn't happen) 2025-04-02 10:09:00 -07:00
tJouve
1efdf4161c
feat(pihole): add optional support for v6 (#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
2025-04-02 09:10:43 -07:00
Michel Loiseleur
3835c62bb6 chore(ci): update linter to v2.0.2 2025-04-02 08:53:54 +02:00
Mikhail Rozentsvayg
f3f58dd676 [attempt to] improve nested conditions readability for cloudflare tests failures scenarios 2025-04-01 12:01:50 -07:00
Kubernetes Prow Robot
e59e96ea64
Merge pull request #5200 from xshot9011/chore/add-ap-southeast-7-hostzone
chore: add se for nlb, alb in thailand region
2025-03-31 15:58:36 -07:00
Mikhail Rozentsvayg
3ef8c7336f rename variables with ambiguous "endpoint" names 2025-03-31 12:02:41 -07:00
Mikhail Rozentsvayg
647d850729 remove redunaant custom hostnames sort 2025-03-31 09:30:05 -07:00
Mikhail Rozentsvayg
6da38ba746 feat(cloudflare): multiple custom hostnames support 2025-03-30 22:21:03 -07:00
stw
4affbd9006 chore: add se for nlb, alb in thailand region 2025-03-29 19:17:46 +07:00
mrozentsvayg
04f6a99c99
fix(cloudflare): custom hostnames edge-cases causing duplicates (#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
2025-03-24 02:06:33 -07:00
Ivan Ka
f6d49ddbe8
feat(banner): standardize user agent and output (#5154)
* chore(banner): add banner

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(banner): add banner

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

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

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

---------

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-03-24 01:16:40 -07:00
Alyxia Sother
25333a418b
feat: IDNA awareness in the zone finder (#5147)
* feat: IDNA awareness in the zone finder

* feat: update zonefinder unit tests

* chore: add warning log and respective test
2025-03-24 01:16:33 -07:00
Romain Beuque
ecd57c86f5
feat(ovh): major rewriting of the provider (#5143)
* feat: ovh: improve cache invalidation on errors + dry-run mode + relative CNAME handling + optimization

Signed-off-by: Romain Beuque <556072+rbeuque74@users.noreply.github.com>

* chore: add more tests

Signed-off-by: Romain Beuque <556072+rbeuque74@users.noreply.github.com>

* fix: align cache expiration with Default value

* chore: address comments from review + updated documentation

* chore: address comments from review

---------

Signed-off-by: Romain Beuque <556072+rbeuque74@users.noreply.github.com>
2025-03-17 07:53:49 -07:00
Michel Loiseleur
313e15ac2c chore(openstack designate)!: remove in-tree provider 2025-03-15 17:19:10 +01:00
mrozentsvayg
017f7687ca
fix(cloudflare): infinite loop with more than 50 custom hostnames (#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
2025-03-14 10:49:48 -07:00
mrozentsvayg
44f1008ee1
cloudflare: bugfix - do not attempt to create unconfigured empty custom hostnames; improve tests; streamline logic (#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
2025-03-12 09:59:48 -07:00
Jérémy Albuixech
5b5bd0980e
fix: add mexico region to external dns supported load balancers (#5157) 2025-03-10 11:59:48 -07:00
Guðlaugur Stefán Egilsson
e64e5368ee
fix(aws-sd): service instances registration and deregistration (#5135)
* Only de-register removed targets

* Use maps for current targets lookup.

* Use camelCase, not _
2025-03-05 00:23:46 -08:00
Ivan Ka
1e8e5e06c5
chore(docs): generate docs/monitoring/metrics.md file (#5117)
* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(docs): generate docs/monitoring/metrics.md file

Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>

---------

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
2025-03-04 05:05:44 -08:00
Rich
7c23e01e31
feat(aws): always create AAAA alias records in route53 (#5111)
* First pass based on existing PR, what is currently on master and some
extra tests.

* Try to resolve AWS service documentation

* Add documentation on how to opt-out of AAAA record creation

* Address documentation concerns

* Add some IPv6 tests to sources

* Make recommended changes to documentation
2025-03-03 00:21:00 -08:00
Ivan Ka
d4a66bdb66
feat(aws): fetch zones with tags batching (#5058)
* feat(aws-provider): aws tags batching

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* feat(aws-provider): aws tags batching

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* wip

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* feat(aws-provider): fetch zones with aws tags batching

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* feat(aws-provider): fetch zones with aws tags batching

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(aws-provider): aws tags batching functionality

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

---------

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-03-02 23:46:56 -08:00
Kubernetes Prow Robot
0e8f84662b
Merge pull request #4871 from Demonware/pdns-validate-mx-srv
feat(pdns): add validation for MX and SRV records
2025-02-24 23:32:30 -08:00
Kubernetes Prow Robot
3f8cef23ca
Merge pull request #5054 from AndrewCharlesHay/test/submitChanges
test(cloudflare): add scenarios on submitChanges
2025-02-24 01:30:28 -08:00
Kubernetes Prow Robot
f09124c952
Merge pull request #5106 from mloiseleur/chore/go-1.24
chore: upgrade ExternalDNS to go 1.24
2025-02-20 03:46:27 -08:00
Andrew Hay
750f8f40ab style: formatting 2025-02-19 17:06:04 +00:00
Andrew Hay
c9df817f04 fix: remove broken test 2025-02-19 16:47:58 +00:00
Andrew Hay
1da72312a9
Merge branch 'master' into test/submitChanges 2025-02-19 11:00:20 -05:00
Michel Loiseleur
a3ac49e269 fix test name 2025-02-19 15:03:37 +01:00
Mikhail Rozentsvayg
ec83b4b8d3 nitpick: rename cloudflare custom hostname test function 2025-02-18 15:23:25 -08:00
Mikhail Rozentsvayg
8dc667a2f6 review suggestions based improvements 2025-02-18 15:04:15 -08:00
Mikhail Rozentsvayg
799ec6d2c9 review suggestions 2025-02-18 14:54:13 -08:00
Mikhail Rozentsvayg
f659f40697 improve error message phrasing 2025-02-18 09:53:30 -08:00
Mikhail Rozentsvayg
b8c09b89cb merge upstream 2025-02-18 08:54:35 -08:00
Ivan Ka
99b9d0d3db
chore(formatting): fix infected files with correct formatting (#5099)
* chore(format): fix go formatting

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(format): linter check configuration

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(formatting): fix infected files with correct formatting

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(formatting): fix infected files with correct formatting

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(formatting): fix infected files with correct formatting

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(formatting): fix infected files with correct formatting

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

* chore(formatting): fix infected files with correct formatting

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>

---------

Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
2025-02-18 01:40:12 -08:00
Mikhail Rozentsvayg
c21afb88c2 fix (english) syntax error in cloudflare custom hostnames error message 2025-02-17 13:07:15 -08:00
Mikhail Rozentsvayg
880220a2b6 more cloudflare custom hostanmes requiremenets clarifications in docs and errors 2025-02-17 10:22:35 -08:00
Mikhail Rozentsvayg
147df48ff5 Merge remote-tracking branch 'upstream/master' into mrozentsvayg/cloudflare-custom-hostname 2025-02-17 09:39:41 -08:00