feat(api): adds AXFR retrieve endpoint, without DNSSEC data
Enables the API user to retrieve her zone data as AXFR in one query. Data is taken straight from nslord, but could also be generated by dnspython using the API data in a later version. This is a first shot at #373.
What's still missing:
- [ ] make sure permissions are set correctly
- [ ] change the docs
This is a first shot at #373.
Isn't #373 about import, while this is about export?
Isn't #373 about import, while this is about export?
The idea was to have an endpoint that can GET and POST, possibly even PATCH a zone file
closed accidentally during master branch rename
This is a first shot at #373.
Isn't #373 about import, while this is about export?
Merged #601 allows import of zonefiles; this PR allows export. An open question is if we accept updates to zones via zonefiles? (If so, how?) A related question is if we accept presigned zones, i.e. containing DNSSEC RRs.
Docs still missing (will be added after we decided the API).
Also, the view needs rate limit configuration. I think throttle_scope = "dns_api_write_rrsets" is sufficient (currently 2/s, but per domain).
For reference, this (otherwise completely unrelated) comment shows how to mock a "download" with JavaScript: https://github.com/scopewu/qrcode.vue/issues/50#issuecomment-1055585303
Before and after merging this, repo config needs to be updated wrt. which checks are required. I suggest making everything required except for the black formatting.
I'm not planning to add GUI in this PR.
This looks ready to go and is already rebased on top of #632
Rebased, and adjusted to things (see conversations above). Can you please review the two fixups?
This can be squashed; before merging repo config needs to be adjusted to the new required tests.
This can be squashed; before merging repo config needs to be adjusted to the new required tests.
Done. - I'm not sure what to adjust. Can you make the changes?
Done. - I'm not sure what to adjust. Can you make the changes?
done!