Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
079d30c
chore(cloudflare): migrate customhostname to v5
AndrewCharlesHay Dec 23, 2025
58cf4b4
style: use range instead of loop
AndrewCharlesHay Jan 6, 2026
02e1006
style: remove extra space
AndrewCharlesHay Jan 6, 2026
1014c8b
style: spelling
AndrewCharlesHay Jan 6, 2026
92a6523
test(cloudflare): restore missing tests dropped during merge
AndrewCharlesHay Jan 6, 2026
7093bc8
style: use t.Context() and t.Parallel() in restored tests
AndrewCharlesHay Jan 6, 2026
211a062
refactor(cloudflare): split submitCustomHostnameChanges to reduce com…
AndrewCharlesHay Jan 6, 2026
e971dee
style: apply gofmt to restored tests
AndrewCharlesHay Jan 6, 2026
782a267
test: restore valid tests from master and append custom ones
AndrewCharlesHay Jan 6, 2026
4e015af
fix(cloudflare): migrate tests to v5 SDK error types and fix PerPage …
AndrewCharlesHay Jan 6, 2026
d9921ef
style(cloudflare): apply gofmt formatting
AndrewCharlesHay Jan 6, 2026
680be39
Update provider/cloudflare/cloudflare_test.go
AndrewCharlesHay Jan 13, 2026
e24091d
test: add to test
AndrewCharlesHay Jan 13, 2026
cb4327c
fix: change context
AndrewCharlesHay Jan 13, 2026
beaec3d
style: use short variable declaration operator instead of var
AndrewCharlesHay Jan 13, 2026
82d9cb3
refactor(cloudflare): address PR review feedback
AndrewCharlesHay Jan 13, 2026
33e7de6
test: add customhostname test
AndrewCharlesHay Jan 13, 2026
a433c27
refactor: make CustomHostname types package-internal
AndrewCharlesHay Jan 13, 2026
9846b7a
style: fix gofmt formatting
AndrewCharlesHay Jan 13, 2026
3cf32f4
Update .gitignore
AndrewCharlesHay Jan 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 0 additions & 33 deletions docs/tutorials/cloudflare.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,37 +4,6 @@ This tutorial describes how to setup ExternalDNS for usage within a Kubernetes c

Make sure to use **>=0.4.2** version of ExternalDNS for this tutorial.

## CloudFlare SDK Migration Status

ExternalDNS is currently migrating from the legacy CloudFlare Go SDK v0 to the modern v4 SDK to improve performance, reliability, and access to newer CloudFlare features. The migration status is:

**✅ Fully migrated to v4 SDK:**

- Zone management (listing, filtering, pagination)
- Zone details retrieval (`GetZone`)
- Zone ID lookup by name (`ZoneIDByName`)
- Zone plan detection (fully v4 implementation)
- Regional services (data localization)

**🔄 Still using legacy v0 SDK:**

- DNS record management (create, update, delete records)
- Custom hostnames
- Proxied records

This mixed approach ensures continued functionality while gradually modernizing the codebase. Users should not experience any breaking changes during this transition.

### SDK Dependencies

ExternalDNS currently uses:

- **cloudflare-go v0.115.0+**: Legacy SDK for DNS records, custom hostnames, and proxied record features
- **cloudflare-go/v4 v4.6.0+**: Modern SDK for all zone management and regional services operations

Zone management has been fully migrated to the v4 SDK, providing improved performance and reliability.

Both SDKs are automatically managed as Go module dependencies and require no special configuration from users.

## Creating a Cloudflare DNS zone

We highly recommend to read this tutorial if you haven't used Cloudflare before:
Expand Down Expand Up @@ -384,8 +353,6 @@ The custom hostname DNS must resolve to the Cloudflare DNS record (`external-dns

Requires [Cloudflare for SaaS](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/) product and "SSL and Certificates" API permission.

**Note:** Due to using the legacy cloudflare-go v0 API for custom hostname management, the custom hostname page size is fixed at 50. This limitation will be addressed in a future migration to the v4 SDK.

## Setting Cloudflare DNS Record Tags

Cloudflare allows you to add descriptive tags to DNS records. This can be useful for organizing your records.
Expand Down
Loading
Loading