external-dns/provider
Arthur Le Roux e17b5ed07b
feat(cloudflare): add support for MX records (#5283)
* feat(cloudflare): add support for MX records

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* test(txt): add additional TXT and MX record test cases

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* feat(endpoint): implement parsing for MX and SRV records with structured targets

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(txt): remove TXT record type from supported types in NewTXTRegistry

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(digitalocean): streamline MX record handling

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(cloudflare): improve error handling in change creation

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(endpoint): return all parsed SRV targets instead of a single target

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* test(endpoint): add parsing tests for MX and SRV records

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(endpoint): streamline MX and SRV record validation and parsing

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(digital_ocean): simplify MX record parsing

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(docs): update link to CRD source in MX record documentation

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(cloudflare): improve error handling for MX record parsing

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(cloudflare): improve error message formatting for MX record parsing

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(endpoint): rename ParseMXRecord to NewMXTarget and update references

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(endpoint): update NewMXTarget to return pointer and adjust tests accordingly

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(cloudflare): consolidate proxyEnabled and proxyDisabled variable declarations

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(endpoint): update TestNewMXTarget to reflect changes in MXTarget struct fields and add missing test case for host validation

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* fix(digitalocean): improve MX record handling by adjusting error handling and ensuring proper priority and host retrieval

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(endpoint): change MXTarget fields to unexported and update NewMXTarget to use them

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(cloudflare): update groupByNameAndTypeWithCustomHostnames to use provider methods and enhance MX record handling in tests

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* test(cloudflare): enhance test cover

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(endpoint): remove unused SRVTarget struct from endpoint.go

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* refactor(endpoint): rename NewMXTarget to NewMXRecord for clarity and update references

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>

* Update docs/sources/mx-record.md

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

---------

Signed-off-by: Arthur Le Roux <arthurleroux@protonmail.com>
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
2025-06-23 23:32:28 -07:00
..
akamai chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
alibabacloud chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
aws chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
awssd test(awssd): fix a flaky test (#5552) 2025-06-22 02:54:52 -07:00
azure chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
civo chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
cloudflare feat(cloudflare): add support for MX records (#5283) 2025-06-23 23:32:28 -07:00
coredns chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
digitalocean feat(cloudflare): add support for MX records (#5283) 2025-06-23 23:32:28 -07:00
dnsimple refactor(provider): replace switch with if for record type filtering (#5548) 2025-06-22 02:30:52 -07:00
exoscale refactor(provider): replace switch with if for record type filtering (#5548) 2025-06-22 02:30:52 -07:00
gandi chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
godaddy chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
google chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
inmemory chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
linode chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
ns1 chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
oci chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
ovh chore(codebase): enable linter recvcheck (#5522) 2025-06-22 03:22:59 -07:00
pdns chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
pihole chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
plural chore(codebase): enable testifylint (#5441) 2025-05-21 03:46:34 -07:00
rfc2136 chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
scaleway chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
transip chore(codebase): enable linter recvcheck (#5522) 2025-06-22 03:22:59 -07:00
webhook chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
cached_provider_test.go Update changes to match latest state of external-dns code 2024-08-14 10:20:59 +02:00
cached_provider.go chore(docs): generate docs/monitoring/metrics.md file (#5117) 2025-03-04 05:05:44 -08:00
OWNERS chore(ci): rework label in OWNERS (#5481) 2025-05-29 13:28:17 -07:00
provider_test.go chore(codebase): enable testifylint (#5441) 2025-05-21 03:46:34 -07:00
provider.go chore(domainfilter): use pointer receivers for DomainFilter (#5546) 2025-06-21 00:38:53 -07:00
recordfilter_test.go Add AAAA to supported record types 2023-03-30 17:47:59 -07:00
recordfilter.go Add AAAA to supported record types 2023-03-30 17:47:59 -07:00
zone_id_filter_test.go imp: improved test coverage from 66.7 to 100% 2025-05-13 11:55:07 +05:30
zone_id_filter.go Simplify DomainFilterInterface 2023-06-05 13:14:23 -07:00
zone_tag_filter_test.go chore(filter-tags): pre-process tags 2025-02-05 08:52:17 +00:00
zone_tag_filter.go chore(filter-tags): pre-process tags 2025-02-05 08:52:17 +00:00
zone_type_filter_test.go Refactor AWS provider to aws-sdk-go-v2 2024-09-06 09:44:54 -04:00
zone_type_filter.go Refactor AWS provider to aws-sdk-go-v2 2024-09-06 09:44:54 -04:00
zonefinder_test.go chore(codebase): enable testifylint (#5441) 2025-05-21 03:46:34 -07:00
zonefinder.go fix(zonefinder): handle underscores in dns records 2025-04-13 19:10:26 +02:00