Hi @D3luxee!
While reviewing all the `ZoneCreator` implementations, I noticed that
the DESEC provider has an incomplete caching implementation for zones.
The provider is populating the cache once on first access. Any zones
that are created will not be readable in the same life-cycle of
dnscontrol. This PR is populating the zone cache after creating a zone.
Would you mind giving this a try and let me know how it goes? Thanks!
Part of https://github.com/StackExchange/dnscontrol/issues/3007
* deSEC: Implement pagination for domain list #1177
* deSEC: add debug logging for pagination
* deSEC: simplify get/post methods by allowing url / api endpoints as target
* deSEC: implement pagination for getRecords function
* deSEC: fix linter warnings
* deSEC: replace domainIndexInitalized variable with checking if the domainIndex == nil
* deSEC: add mutex for domainIndex
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
* use /auth/account endpoint for token validation
this implements the token validation using the /auth/account api endpoint as suggested in #1177 instead of fetching the domain list
* deSEC: add support for long txt records #996
* deSEC: add support for a different api error response
relates to #996 where we had insufficient error output due to unknown api error format
* deSEC: remove unused fetchDomainList function
* deSEC: improve error handling
* deSEC: support for long / multistring txt records
the previous commit was broken this is now working (CRUD)
* deSEC: document what desecProvider.domainIndex is used for
* deSEC: handle the rate limiting correctly
we try to use the Retry-After header to determine how long we should sleep until retry
* deSEC: further improvement of rate limit handling
we cut off if the Retry-After header exceeds 3 minutes because this might be the daily limit.
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
* Add initial deSEC support
* Handle the api rate limiting
* Fix deleteRR and do some code cleanup
* improve rate limiting and record deletion
* Add documentation for deSEC provider
* README.md update list of supported DNS providers
* deSEC supports SSHFP records
* dynamic minimum_ttl and hint for DNSSec on domain creation
* merge all changes into one single bulk api request
* Fix: actually set the TTL to min_ttl if necessary
* use a constant for apiBase URL
* Fix code comments
* Use PUT instead of PATCH for upsertRR method
* use ' instead of " for java script examples