<p>I created External DNS on my cluster (provided by DigitalOcean) with the following values for <code>stable/external-dns</code> Helm chart:</p>

<pre><code>provider: digitalocean
digitalocean:
  apiToken: "MY_DIGITAL_OCEAN_TOKEN"
domainFilters:
  - example.com
rbac:
  create: true
logLevel: debug
</code></pre>

<p>It used to be fine, but recently it stopped creating records due to <code>no hosted zone matching record DNS Name was detected</code>:</p>

<pre><code>time="2019-06-10T14:42:55Z" level=debug msg="Endpoints generated from ingress: deepfork/df-stats-site: [fork.example.com 0 IN A 134.***.***.197 [] fork.example.com 0 IN A 134.***.***.197 []]"
time="2019-06-10T14:42:55Z" level=debug msg="Removing duplicate endpoint fork.example.com 0 IN A 134.***.***.197 []"
time="2019-06-10T14:42:56Z" level=debug msg="Skipping record fork.example.com because no hosted zone matching record DNS Name was detected "
time="2019-06-10T14:42:56Z" level=debug msg="Skipping record fork.example.com because no hosted zone matching record DNS Name was detected "
</code></pre>

stasdeep
<p>It got resolved when I manually added the record with <a href="https://cloud.digitalocean.com/networking/domains/" rel="nofollow noreferrer">DigitalOcean web interface</a>. After that, ExternalDNS started ignoring adding new records because of the fact it was already there.</p>

<pre><code>time="2019-06-18T11:09:55Z" level=debug msg="Removing duplicate endpoint fork.example.com 0 IN A 134.***.***.197 []"
</code></pre>

<p>Later I removed the records with the interface, and ExternalDNS it started working.</p>

<pre><code>time="2019-06-18T11:10:56Z" level=info msg="Changing record." action=CREATE record=fork.example.com ttl=300 type=A zone=example.com
time="2019-06-18T11:10:56Z" level=info msg="Changing record." action=CREATE record=fork.example.com ttl=300 type=TXT zone=example.com
</code></pre>
