From 95a995189d1ead2c2ac8b69415da361a6ee74506 Mon Sep 17 00:00:00 2001 From: Patrik Kernstock Date: Mon, 20 May 2019 21:27:37 +0200 Subject: [PATCH] CLOUDFLARE: Fix CF trying to update non-changeable TTL (#489) --- providers/cloudflare/cloudflareProvider.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/providers/cloudflare/cloudflareProvider.go b/providers/cloudflare/cloudflareProvider.go index 9984516ed..29af3ffe9 100644 --- a/providers/cloudflare/cloudflareProvider.go +++ b/providers/cloudflare/cloudflareProvider.go @@ -126,6 +126,12 @@ func (c *CloudflareApi) GetDomainCorrections(dc *models.DomainConfig) ([]*models if rec.Type == "ALIAS" { rec.Type = "CNAME" } + // As per CF-API documentation proxied records are always forced to have a TTL of 1. + // When not forcing this property change here, dnscontrol tries each time to update + // the TTL of a record which simply cannot be changed anyway. + if rec.Metadata[metaProxy] != "off" { + rec.TTL = 1 + } if labelMatches(rec.GetLabel(), c.ignoredLabels) { log.Fatalf("FATAL: dnsconfig contains label that matches ignored_labels: %#v is in %v)\n", rec.GetLabel(), c.ignoredLabels) }