-
Notifications
You must be signed in to change notification settings - Fork 418
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
DNSSEC Discussion #31
Comments
We have API support over at DNSimple for signing zones as well as managing DS records when zones are signed elsewhere. It's true that support is spotty at registrars, especially with API support, but if you want to try to support it at some point, you can use us as your guinea pig. You definitely want to avoid key management if you can. Key rotation needs to be handled carefully to ensure you do not lose DNS resolution when rotating out old keys. Happy to answer questions about it if you have them, as our implementation just came out recently so it is front and center in my mind. |
We (HEXONET) support DNSSEC for various TLDs through our Backend System API Read here. Feel free to let us know when you dive into working on DNSSEC support in dnscontrol - we can definitely support you here. /UPDATE: just got notification that we support DNSSEC in direction to the appropriate TLD registry, but our DNSSystem itself is not yet ready, but WIP. So support is coming, but no timeline available up to now. |
DS record support is gonna be added in #469 when it merges. After that I should have all the pieces I need to do a more automatic dnssec setup process with dnscontrol. It will be fairly analogous to how we handle nameservers currently. If dnssec is "enabled" for a domain, we will:
I have good test accounts with Cloudflare and Google Cloud which both support the provider side of things (so it appears), and it looks like name.com now has a registrar api to submit the ds records. So I should have everything I need to test and get this going. |
A few open questions I need to research:
|
AFAIK, the only thing that needs to be consistent between the providers is the algorithm used. If providers use different algorithms then you may run into issues (this will need to be tested). Many providers will not let you sign a zone with keys you control, thus proposing to have every provider sign with all of the keys will cut off a portion of the providers available. |
That makes sense. If I am reading things correctly from my testing, the providers themselves really never need to serve DS records at all for the root. That makes it easy. You only need to specify DS records if delegating subdomains or something. The happy path is really just "collect DS records and submit to registrar". |
When several DNS providers share the operational responsibility for a zone, they need to serve each other's Note that this scenario also occurs when transferring zone operation from provider A to provider B without going insecure: if resolution and validation should not be interrupted, a dual-signer transition period is unavoidable. An informational RFC exists, detailing the different working modes of such "multi-signer" scenarios: https://datatracker.ietf.org/doc/html/rfc8901 The automation requires conveying each DNS provider's
// Configuration
const domain = 'example.com';
const providers = ['DESEC', 'CLOUDFLAREAPI'];
// Preparation
const instances = providers.map(type => {
"type": type,
"provider": NewDnsProvider(type, type),
});
// Fetch DNSSEC paramters from each provider
for (const instance of instances) {
// QUESTION: Does something like fetchDNSSECParametersFromProvider() exist?
instance.dnskey = instance.provider.fetchDNSSECParametersFromProvider('DNSKEY');
}
// Combine DNSKEY RRsets, removing duplicates
const dnskeys = new Set(instances.reduce((acc, cur) => acc.concat(cur.dnskey), []));
const rrset_dnskey = Array.from(dnskeys).map(rr => DNSKEY('@', rr));
// Distribute DNSKEY to all
for (const instance of instances) {
D(domain, NewRegistrar('none', 'NONE'), instance.provider, NO_PURGE, rrset_dnskey);
}
As far as I can tell, the missing pieces here would be:
Would you folks be interested in this kind of functionality? (Some related work is also going on here: https://github.com/DNSSEC-Provisioning/Multi-signer) |
providers-test-netcup.log appended: === RUN TestDNSProviders === RUN TestDNSProviders/oXXX.de === RUN TestDNSProviders/oXXX.de/Clean_Slate:Empty integration_test.go:220: DELETE A test.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50790741 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Create_an_A_record integration_test.go:220: CREATE A oXXX.de 1.1.1.1 ttl=0 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Change_it integration_test.go:220: MODIFY A oXXX.de: (1.1.1.1 ttl=0) -> (1.2.3.4 ttl=0), Netcup ID: 50825306: === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Add_another integration_test.go:220: CREATE A www.oXXX.de 1.2.3.4 ttl=0 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Add_another(same_name) integration_test.go:220: CREATE A www.oXXX.de 5.6.7.8 ttl=0 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Change_a_ttl integration_test.go:216: Expected changes, but got none === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty integration_test.go:220: DELETE A oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825306 integration_test.go:220: DELETE A www.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825307 integration_test.go:220: DELETE A www.oXXX.de 5.6.7.8 ttl=0, Netcup ID: 50825308 === RUN TestDNSProviders/oXXX.de/01:WildcardACD:Create_wildcard integration_test.go:220: CREATE A *.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A www.oXXX.de 1.1.1.1 ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#01 integration_test.go:220: DELETE A *.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825309 integration_test.go:220: DELETE A www.oXXX.de 1.1.1.1 ttl=0, Netcup ID: 50825310 === RUN TestDNSProviders/oXXX.de/02:CNAME:Create_a_CNAME integration_test.go:220: CREATE CNAME foo.oXXX.de google.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#02 integration_test.go:220: DELETE CNAME foo.oXXX.de google.com. ttl=0, Netcup ID: 50825311 === RUN TestDNSProviders/oXXX.de/03:MX:MX_record integration_test.go:220: CREATE MX oXXX.de 5 foo.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#03 integration_test.go:220: DELETE MX oXXX.de 5 foo.com. ttl=0, Netcup ID: 50825312 === RUN TestDNSProviders/oXXX.de/04:Null_MX_***SKIPPED(excluded_by_not("NETCUP"))***:Empty === RUN TestDNSProviders/oXXX.de/05:NS_***SKIPPED(excluded_by_not("NETCUP"))***:Empty === RUN TestDNSProviders/oXXX.de/06:IGNORE_NAME_function:Create_some_records integration_test.go:220: CREATE TXT foo.oXXX.de "simple" ttl=0 integration_test.go:220: CREATE A foo.oXXX.de 1.2.3.4 ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#04 integration_test.go:220: DELETE A foo.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825313 === RUN TestDNSProviders/oXXX.de/07:IGNORE_NAME_apex:Create_some_records integration_test.go:220: CREATE TXT bar.oXXX.de "stringbar" ttl=0 integration_test.go:220: CREATE A bar.oXXX.de 2.4.6.8 ttl=0 integration_test.go:220: CREATE A oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE TXT oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 2. integration_test.go:241: UNEXPECTED #0: CREATE TXT bar.oXXX.de "stringbar" ttl=0 integration_test.go:241: UNEXPECTED StackExchange#1: CREATE TXT oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#05 integration_test.go:220: DELETE A bar.oXXX.de 2.4.6.8 ttl=0, Netcup ID: 50825314 integration_test.go:220: DELETE A oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825315 === RUN TestDNSProviders/oXXX.de/08:IGNORE_TARGET_function:Create_some_records integration_test.go:220: CREATE CNAME bar.oXXX.de test.bar.com. ttl=0 integration_test.go:220: CREATE CNAME foo.oXXX.de test.foo.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#06 integration_test.go:220: DELETE CNAME bar.oXXX.de test.bar.com. ttl=0, Netcup ID: 50825316 integration_test.go:220: DELETE CNAME foo.oXXX.de test.foo.com. ttl=0, Netcup ID: 50825317 === RUN TestDNSProviders/oXXX.de/09:simple_TXT:Create_a_TXT integration_test.go:220: CREATE TXT foo.oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#07 === RUN TestDNSProviders/oXXX.de/10:simple_TXT-spf1:Create_a_TXT/SPF integration_test.go:220: CREATE TXT foo.oXXX.de "v=spf1 ip4:99.99.99.99 -all" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "v=spf1 ip4:99.99.99.99 -all" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#08 === RUN TestDNSProviders/oXXX.de/11:long_TXT:Create_long_TXT integration_test.go:220: CREATE TXT foo.oXXX.de "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#09 === RUN TestDNSProviders/oXXX.de/12:complex_TXT:TXT_with_0-octel_string integration_test.go:206: ***SKIPPED(PROVIDER DOES NOT SUPPORT 'txtstring is empty' ::"12:complex TXT") === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#10 === RUN TestDNSProviders/oXXX.de/13:long_TXT:Create_a_505_TXT integration_test.go:220: CREATE TXT foo257.oXXX.de "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo257.oXXX.de "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#11 === RUN TestDNSProviders/oXXX.de/14:TXTMulti:Create_TXTMulti_1 integration_test.go:220: CREATE TXT foo1.oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo1.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#12 === RUN TestDNSProviders/oXXX.de/15:TXTMulti-same:Create_TXTMulti_1 integration_test.go:220: CREATE TXT foo.oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#13 === RUN TestDNSProviders/oXXX.de/16:TypeChange:Create_a_CNAME integration_test.go:220: CREATE CNAME foo.oXXX.de google.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#14 integration_test.go:220: DELETE CNAME foo.oXXX.de google.com. ttl=0, Netcup ID: 50825318 === RUN TestDNSProviders/oXXX.de/17:Case_Sensitivity:Create_CAPS integration_test.go:220: CREATE MX bar.oXXX.de 5 bar.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#15 integration_test.go:220: DELETE MX bar.oXXX.de 5 bar.com. ttl=0, Netcup ID: 50825319 === RUN TestDNSProviders/oXXX.de/18:IDNA:Internationalized_name integration_test.go:220: CREATE A xn--ndaaa.oXXX.de 1.2.3.4 ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#16 integration_test.go:220: DELETE A xn--ndaaa.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825320 === RUN TestDNSProviders/oXXX.de/19:IDNAs_in_CNAME_targets:IDN_CNAME_AND_Target integration_test.go:220: CREATE CNAME xn--o-0gab.oXXX.de xn--ndaaa.xn--vhquv. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#17 integration_test.go:220: DELETE CNAME xn--o-0gab.oXXX.de xn--ndaaa.xn--vhquv. ttl=0, Netcup ID: 50825321 === RUN TestDNSProviders/oXXX.de/20:pager101:99_records integration_test.go:220: CREATE A rec0000.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0001.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0002.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0003.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0004.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0005.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0006.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0007.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0008.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0009.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0010.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0011.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0012.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0013.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0014.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0015.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0016.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0017.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0018.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0019.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0020.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0021.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0022.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0023.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0024.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0025.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0026.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0027.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0028.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0029.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0030.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0031.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0032.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0033.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0034.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0035.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0036.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0037.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0038.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0039.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0040.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0041.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0042.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0043.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0044.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0045.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0046.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0047.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0048.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0049.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0050.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0051.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0052.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0053.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0054.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0055.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0056.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0057.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0058.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0059.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0060.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0061.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0062.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0063.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0064.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0065.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0066.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0067.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0068.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0069.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0070.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0071.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0072.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0073.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0074.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0075.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0076.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0077.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0078.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0079.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0080.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0081.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0082.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0083.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0084.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0085.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0086.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0087.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0088.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0089.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0090.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0091.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0092.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0093.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0094.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0095.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0096.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0097.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0098.oXXX.de 1.2.3.4 ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 99. integration_test.go:241: UNEXPECTED #0: CREATE A rec0000.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#1: CREATE A rec0001.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#2: CREATE A rec0002.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#3: CREATE A rec0003.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#4: CREATE A rec0004.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#5: CREATE A rec0005.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#6: CREATE A rec0006.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#7: CREATE A rec0007.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#8: CREATE A rec0008.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#9: CREATE A rec0009.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#10: CREATE A rec0010.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#11: CREATE A rec0011.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#12: CREATE A rec0012.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#13: CREATE A rec0013.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#14: CREATE A rec0014.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#15: CREATE A rec0015.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#16: CREATE A rec0016.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#17: CREATE A rec0017.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#18: CREATE A rec0018.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#19: CREATE A rec0019.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#20: CREATE A rec0020.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#21: CREATE A rec0021.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#22: CREATE A rec0022.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#23: CREATE A rec0023.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#24: CREATE A rec0024.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#25: CREATE A rec0025.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#26: CREATE A rec0026.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#27: CREATE A rec0027.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#28: CREATE A rec0028.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#29: CREATE A rec0029.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#30: CREATE A rec0030.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#31: CREATE A rec0031.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#32: CREATE A rec0032.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#33: CREATE A rec0033.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#34: CREATE A rec0034.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#35: CREATE A rec0035.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#36: CREATE A rec0036.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#37: CREATE A rec0037.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#38: CREATE A rec0038.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#39: CREATE A rec0039.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#40: CREATE A rec0040.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#41: CREATE A rec0041.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#42: CREATE A rec0042.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#43: CREATE A rec0043.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#44: CREATE A rec0044.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#45: CREATE A rec0045.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#46: CREATE A rec0046.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#47: CREATE A rec0047.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#48: CREATE A rec0048.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#49: CREATE A rec0049.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#50: CREATE A rec0050.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#51: CREATE A rec0051.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#52: CREATE A rec0052.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#53: CREATE A rec0053.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#54: CREATE A rec0054.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#55: CREATE A rec0055.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#56: CREATE A rec0056.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#57: CREATE A rec0057.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#58: CREATE A rec0058.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#59: CREATE A rec0059.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#60: CREATE A rec0060.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#61: CREATE A rec0061.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#62: CREATE A rec0062.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#63: CREATE A rec0063.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#64: CREATE A rec0064.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#65: CREATE A rec0065.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#66: CREATE A rec0066.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#67: CREATE A rec0067.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#68: CREATE A rec0068.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#69: CREATE A rec0069.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#70: CREATE A rec0070.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#71: CREATE A rec0071.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#72: CREATE A rec0072.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#73: CREATE A rec0073.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#74: CREATE A rec0074.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#75: CREATE A rec0075.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#76: CREATE A rec0076.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#77: CREATE A rec0077.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#78: CREATE A rec0078.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#79: CREATE A rec0079.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#80: CREATE A rec0080.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#81: CREATE A rec0081.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#82: CREATE A rec0082.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#83: CREATE A rec0083.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#84: CREATE A rec0084.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#85: CREATE A rec0085.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#86: CREATE A rec0086.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#87: CREATE A rec0087.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#88: CREATE A rec0088.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#89: CREATE A rec0089.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#90: CREATE A rec0090.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#91: CREATE A rec0091.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#92: CREATE A rec0092.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#93: CREATE A rec0093.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#94: CREATE A rec0094.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#95: CREATE A rec0095.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#96: CREATE A rec0096.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#97: CREATE A rec0097.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED StackExchange#98: CREATE A rec0098.oXXX.de 1.2.3.4 ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#18 === RUN TestDNSProviders/oXXX.de/21:pager601_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/22:pager1201_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/23:CAA:CAA_record integration_test.go:220: CREATE CAA oXXX.de 0 issue "letsencrypt.org" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE CAA oXXX.de 0 issue "letsencrypt.org" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#19 === RUN TestDNSProviders/oXXX.de/24:CAA_with_;:CAA_many_records integration_test.go:220: CREATE CAA oXXX.de 0 issuewild ";" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE CAA oXXX.de 0 issuewild ";" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#20 === RUN TestDNSProviders/oXXX.de/25:Issue_1374:CAA_spaces integration_test.go:220: CREATE CAA oXXX.de 0 issue "letsencrypt.org; validationmethods=dns-01; accounturi=https://acme-v02.api.letsencrypt.org/acme/acct/1234" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE CAA oXXX.de 0 issue "letsencrypt.org; validationmethods=dns-01; accounturi=https://acme-v02.api.letsencrypt.org/acme/acct/1234" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#21 === RUN TestDNSProviders/oXXX.de/26:NAPTR_***SKIPPED(CanUseNAPTR_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/27:PTR_***SKIPPED(CanUsePTR_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/28:SOA_***SKIPPED(CanUseSOA_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/29:SRV:SRV_record integration_test.go:220: CREATE SRV _sip._tcp.oXXX.de 5 6 7 foo.com. ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE SRV _sip._tcp.oXXX.de 5 6 7 foo.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#22 === RUN TestDNSProviders/oXXX.de/30:SRV_w/_null_target:Null_Target integration_test.go:220: CREATE SRV _sip._tcp.oXXX.de 52 62 72 foo.com. ttl=0 integration_test.go:220: CREATE SRV _sip._tcp.oXXX.de 15 65 75 . ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 2. integration_test.go:241: UNEXPECTED #0: CREATE SRV _sip._tcp.oXXX.de 52 62 72 foo.com. ttl=0 integration_test.go:241: UNEXPECTED StackExchange#1: CREATE SRV _sip._tcp.oXXX.de 15 65 75 . ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#23 === RUN TestDNSProviders/oXXX.de/31:SSHFP_***SKIPPED(CanUseSSHFP_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/32:TLSA_***SKIPPED(CanUseTLSA_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/33:DS_***SKIPPED(CanUseDS_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/34:DS_(children_only)_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/35:DS_(children_only)_CLOUDNS_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/36:ALIAS_***SKIPPED(CanUseAlias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/37:AZURE_ALIAS_***SKIPPED(CanUseAzureAlias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/38:R53_ALIAS2_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/39:R53_ALIAS_ORDER_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/40:CF_REDIRECT_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/41:CF_PROXY_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/42:CF_WORKER_ROUTE_***SKIPPED(disabled_by_only)***:Empty --- FAIL: TestDNSProviders (25.84s) --- FAIL: TestDNSProviders/oXXX.de (24.98s) --- PASS: TestDNSProviders/oXXX.de/Clean_Slate:Empty (0.25s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Create_an_A_record (0.33s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Change_it (0.32s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Add_another (0.34s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Add_another(same_name) (0.38s) --- FAIL: TestDNSProviders/oXXX.de/00:GeneralACD:Change_a_ttl (0.11s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty (0.59s) --- PASS: TestDNSProviders/oXXX.de/01:WildcardACD:Create_wildcard (0.46s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#01 (0.37s) --- PASS: TestDNSProviders/oXXX.de/02:CNAME:Create_a_CNAME (0.31s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#02 (0.23s) --- PASS: TestDNSProviders/oXXX.de/03:MX:MX_record (0.31s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#03 (0.21s) --- PASS: TestDNSProviders/oXXX.de/04:Null_MX_***SKIPPED(excluded_by_not("NETCUP"))***:Empty (0.10s) --- PASS: TestDNSProviders/oXXX.de/05:NS_***SKIPPED(excluded_by_not("NETCUP"))***:Empty (0.08s) --- FAIL: TestDNSProviders/oXXX.de/06:IGNORE_NAME_function:Create_some_records (0.36s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#04 (0.24s) --- FAIL: TestDNSProviders/oXXX.de/07:IGNORE_NAME_apex:Create_some_records (0.57s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#05 (0.35s) --- PASS: TestDNSProviders/oXXX.de/08:IGNORE_TARGET_function:Create_some_records (0.45s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#06 (0.38s) --- FAIL: TestDNSProviders/oXXX.de/09:simple_TXT:Create_a_TXT (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#07 (0.08s) --- FAIL: TestDNSProviders/oXXX.de/10:simple_TXT-spf1:Create_a_TXT/SPF (0.28s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#08 (0.12s) --- FAIL: TestDNSProviders/oXXX.de/11:long_TXT:Create_long_TXT (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#09 (0.11s) --- SKIP: TestDNSProviders/oXXX.de/12:complex_TXT:TXT_with_0-octel_string (0.00s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#10 (0.10s) --- FAIL: TestDNSProviders/oXXX.de/13:long_TXT:Create_a_505_TXT (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#11 (0.08s) --- FAIL: TestDNSProviders/oXXX.de/14:TXTMulti:Create_TXTMulti_1 (0.26s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#12 (0.09s) --- FAIL: TestDNSProviders/oXXX.de/15:TXTMulti-same:Create_TXTMulti_1 (0.24s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#13 (0.10s) --- PASS: TestDNSProviders/oXXX.de/16:TypeChange:Create_a_CNAME (0.34s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#14 (0.23s) --- PASS: TestDNSProviders/oXXX.de/17:Case_Sensitivity:Create_CAPS (0.33s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#15 (0.22s) --- PASS: TestDNSProviders/oXXX.de/18:IDNA:Internationalized_name (0.34s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#16 (0.21s) --- PASS: TestDNSProviders/oXXX.de/19:IDNAs_in_CNAME_targets:IDN_CNAME_AND_Target (0.29s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#17 (0.24s) --- FAIL: TestDNSProviders/oXXX.de/20:pager101:99_records (11.55s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#18 (0.05s) --- PASS: TestDNSProviders/oXXX.de/21:pager601_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/22:pager1201_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- FAIL: TestDNSProviders/oXXX.de/23:CAA:CAA_record (0.20s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#19 (0.05s) --- FAIL: TestDNSProviders/oXXX.de/24:CAA_with_;:CAA_many_records (0.19s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#20 (0.06s) --- FAIL: TestDNSProviders/oXXX.de/25:Issue_1374:CAA_spaces (0.17s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#21 (0.07s) --- PASS: TestDNSProviders/oXXX.de/26:NAPTR_***SKIPPED(CanUseNAPTR_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/27:PTR_***SKIPPED(CanUsePTR_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/28:SOA_***SKIPPED(CanUseSOA_not_supported)***:Empty (0.06s) --- FAIL: TestDNSProviders/oXXX.de/29:SRV:SRV_record (0.17s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#22 (0.06s) --- FAIL: TestDNSProviders/oXXX.de/30:SRV_w/_null_target:Null_Target (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#23 (0.08s) --- PASS: TestDNSProviders/oXXX.de/31:SSHFP_***SKIPPED(CanUseSSHFP_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/32:TLSA_***SKIPPED(CanUseTLSA_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/33:DS_***SKIPPED(CanUseDS_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/34:DS_(children_only)_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/35:DS_(children_only)_CLOUDNS_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/36:ALIAS_***SKIPPED(CanUseAlias_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/37:AZURE_ALIAS_***SKIPPED(CanUseAzureAlias_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/38:R53_ALIAS2_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/39:R53_ALIAS_ORDER_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/40:CF_REDIRECT_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/41:CF_PROXY_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/42:CF_WORKER_ROUTE_***SKIPPED(disabled_by_only)***:Empty (0.06s) === RUN TestDualProviders integration_test.go:312: Skipping. DocDualHost == Cannot --- SKIP: TestDualProviders (0.06s) FAIL exit status 1 FAIL github.com/StackExchange/dnscontrol/v3/integrationTest 25.942s
providers-test-netcup.log appended: === RUN TestDNSProviders === RUN TestDNSProviders/oXXX.de === RUN TestDNSProviders/oXXX.de/Clean_Slate:Empty integration_test.go:220: DELETE A test.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50790741 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Create_an_A_record integration_test.go:220: CREATE A oXXX.de 1.1.1.1 ttl=0 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Change_it integration_test.go:220: MODIFY A oXXX.de: (1.1.1.1 ttl=0) -> (1.2.3.4 ttl=0), Netcup ID: 50825306: === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Add_another integration_test.go:220: CREATE A www.oXXX.de 1.2.3.4 ttl=0 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Add_another(same_name) integration_test.go:220: CREATE A www.oXXX.de 5.6.7.8 ttl=0 === RUN TestDNSProviders/oXXX.de/00:GeneralACD:Change_a_ttl integration_test.go:216: Expected changes, but got none === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty integration_test.go:220: DELETE A oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825306 integration_test.go:220: DELETE A www.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825307 integration_test.go:220: DELETE A www.oXXX.de 5.6.7.8 ttl=0, Netcup ID: 50825308 === RUN TestDNSProviders/oXXX.de/01:WildcardACD:Create_wildcard integration_test.go:220: CREATE A *.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A www.oXXX.de 1.1.1.1 ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#01 integration_test.go:220: DELETE A *.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825309 integration_test.go:220: DELETE A www.oXXX.de 1.1.1.1 ttl=0, Netcup ID: 50825310 === RUN TestDNSProviders/oXXX.de/02:CNAME:Create_a_CNAME integration_test.go:220: CREATE CNAME foo.oXXX.de google.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#02 integration_test.go:220: DELETE CNAME foo.oXXX.de google.com. ttl=0, Netcup ID: 50825311 === RUN TestDNSProviders/oXXX.de/03:MX:MX_record integration_test.go:220: CREATE MX oXXX.de 5 foo.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#03 integration_test.go:220: DELETE MX oXXX.de 5 foo.com. ttl=0, Netcup ID: 50825312 === RUN TestDNSProviders/oXXX.de/04:Null_MX_***SKIPPED(excluded_by_not("NETCUP"))***:Empty === RUN TestDNSProviders/oXXX.de/05:NS_***SKIPPED(excluded_by_not("NETCUP"))***:Empty === RUN TestDNSProviders/oXXX.de/06:IGNORE_NAME_function:Create_some_records integration_test.go:220: CREATE TXT foo.oXXX.de "simple" ttl=0 integration_test.go:220: CREATE A foo.oXXX.de 1.2.3.4 ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#04 integration_test.go:220: DELETE A foo.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825313 === RUN TestDNSProviders/oXXX.de/07:IGNORE_NAME_apex:Create_some_records integration_test.go:220: CREATE TXT bar.oXXX.de "stringbar" ttl=0 integration_test.go:220: CREATE A bar.oXXX.de 2.4.6.8 ttl=0 integration_test.go:220: CREATE A oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE TXT oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 2. integration_test.go:241: UNEXPECTED #0: CREATE TXT bar.oXXX.de "stringbar" ttl=0 integration_test.go:241: UNEXPECTED #1: CREATE TXT oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#05 integration_test.go:220: DELETE A bar.oXXX.de 2.4.6.8 ttl=0, Netcup ID: 50825314 integration_test.go:220: DELETE A oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825315 === RUN TestDNSProviders/oXXX.de/08:IGNORE_TARGET_function:Create_some_records integration_test.go:220: CREATE CNAME bar.oXXX.de test.bar.com. ttl=0 integration_test.go:220: CREATE CNAME foo.oXXX.de test.foo.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#06 integration_test.go:220: DELETE CNAME bar.oXXX.de test.bar.com. ttl=0, Netcup ID: 50825316 integration_test.go:220: DELETE CNAME foo.oXXX.de test.foo.com. ttl=0, Netcup ID: 50825317 === RUN TestDNSProviders/oXXX.de/09:simple_TXT:Create_a_TXT integration_test.go:220: CREATE TXT foo.oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#07 === RUN TestDNSProviders/oXXX.de/10:simple_TXT-spf1:Create_a_TXT/SPF integration_test.go:220: CREATE TXT foo.oXXX.de "v=spf1 ip4:99.99.99.99 -all" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "v=spf1 ip4:99.99.99.99 -all" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#08 === RUN TestDNSProviders/oXXX.de/11:long_TXT:Create_long_TXT integration_test.go:220: CREATE TXT foo.oXXX.de "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#09 === RUN TestDNSProviders/oXXX.de/12:complex_TXT:TXT_with_0-octel_string integration_test.go:206: ***SKIPPED(PROVIDER DOES NOT SUPPORT 'txtstring is empty' ::"12:complex TXT") === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#10 === RUN TestDNSProviders/oXXX.de/13:long_TXT:Create_a_505_TXT integration_test.go:220: CREATE TXT foo257.oXXX.de "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo257.oXXX.de "EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#11 === RUN TestDNSProviders/oXXX.de/14:TXTMulti:Create_TXTMulti_1 integration_test.go:220: CREATE TXT foo1.oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo1.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#12 === RUN TestDNSProviders/oXXX.de/15:TXTMulti-same:Create_TXTMulti_1 integration_test.go:220: CREATE TXT foo.oXXX.de "simple" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE TXT foo.oXXX.de "simple" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#13 === RUN TestDNSProviders/oXXX.de/16:TypeChange:Create_a_CNAME integration_test.go:220: CREATE CNAME foo.oXXX.de google.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#14 integration_test.go:220: DELETE CNAME foo.oXXX.de google.com. ttl=0, Netcup ID: 50825318 === RUN TestDNSProviders/oXXX.de/17:Case_Sensitivity:Create_CAPS integration_test.go:220: CREATE MX bar.oXXX.de 5 bar.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#15 integration_test.go:220: DELETE MX bar.oXXX.de 5 bar.com. ttl=0, Netcup ID: 50825319 === RUN TestDNSProviders/oXXX.de/18:IDNA:Internationalized_name integration_test.go:220: CREATE A xn--ndaaa.oXXX.de 1.2.3.4 ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#16 integration_test.go:220: DELETE A xn--ndaaa.oXXX.de 1.2.3.4 ttl=0, Netcup ID: 50825320 === RUN TestDNSProviders/oXXX.de/19:IDNAs_in_CNAME_targets:IDN_CNAME_AND_Target integration_test.go:220: CREATE CNAME xn--o-0gab.oXXX.de xn--ndaaa.xn--vhquv. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#17 integration_test.go:220: DELETE CNAME xn--o-0gab.oXXX.de xn--ndaaa.xn--vhquv. ttl=0, Netcup ID: 50825321 === RUN TestDNSProviders/oXXX.de/20:pager101:99_records integration_test.go:220: CREATE A rec0000.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0001.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0002.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0003.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0004.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0005.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0006.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0007.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0008.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0009.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0010.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0011.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0012.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0013.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0014.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0015.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0016.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0017.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0018.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0019.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0020.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0021.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0022.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0023.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0024.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0025.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0026.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0027.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0028.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0029.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0030.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0031.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0032.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0033.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0034.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0035.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0036.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0037.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0038.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0039.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0040.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0041.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0042.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0043.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0044.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0045.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0046.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0047.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0048.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0049.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0050.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0051.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0052.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0053.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0054.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0055.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0056.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0057.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0058.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0059.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0060.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0061.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0062.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0063.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0064.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0065.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0066.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0067.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0068.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0069.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0070.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0071.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0072.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0073.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0074.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0075.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0076.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0077.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0078.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0079.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0080.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0081.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0082.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0083.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0084.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0085.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0086.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0087.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0088.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0089.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0090.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0091.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0092.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0093.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0094.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0095.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0096.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0097.oXXX.de 1.2.3.4 ttl=0 integration_test.go:220: CREATE A rec0098.oXXX.de 1.2.3.4 ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 99. integration_test.go:241: UNEXPECTED #0: CREATE A rec0000.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #1: CREATE A rec0001.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #2: CREATE A rec0002.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #3: CREATE A rec0003.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #4: CREATE A rec0004.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #5: CREATE A rec0005.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #6: CREATE A rec0006.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #7: CREATE A rec0007.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #8: CREATE A rec0008.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #9: CREATE A rec0009.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #10: CREATE A rec0010.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #11: CREATE A rec0011.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #12: CREATE A rec0012.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #13: CREATE A rec0013.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #14: CREATE A rec0014.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #15: CREATE A rec0015.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #16: CREATE A rec0016.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #17: CREATE A rec0017.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #18: CREATE A rec0018.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #19: CREATE A rec0019.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #20: CREATE A rec0020.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #21: CREATE A rec0021.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #22: CREATE A rec0022.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #23: CREATE A rec0023.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #24: CREATE A rec0024.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #25: CREATE A rec0025.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #26: CREATE A rec0026.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #27: CREATE A rec0027.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #28: CREATE A rec0028.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #29: CREATE A rec0029.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #30: CREATE A rec0030.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #31: CREATE A rec0031.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #32: CREATE A rec0032.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #33: CREATE A rec0033.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #34: CREATE A rec0034.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #35: CREATE A rec0035.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #36: CREATE A rec0036.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #37: CREATE A rec0037.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #38: CREATE A rec0038.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #39: CREATE A rec0039.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #40: CREATE A rec0040.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #41: CREATE A rec0041.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #42: CREATE A rec0042.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #43: CREATE A rec0043.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #44: CREATE A rec0044.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #45: CREATE A rec0045.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #46: CREATE A rec0046.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #47: CREATE A rec0047.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #48: CREATE A rec0048.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #49: CREATE A rec0049.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #50: CREATE A rec0050.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #51: CREATE A rec0051.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #52: CREATE A rec0052.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #53: CREATE A rec0053.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #54: CREATE A rec0054.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #55: CREATE A rec0055.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #56: CREATE A rec0056.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #57: CREATE A rec0057.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #58: CREATE A rec0058.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #59: CREATE A rec0059.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #60: CREATE A rec0060.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #61: CREATE A rec0061.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #62: CREATE A rec0062.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #63: CREATE A rec0063.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #64: CREATE A rec0064.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #65: CREATE A rec0065.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #66: CREATE A rec0066.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #67: CREATE A rec0067.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #68: CREATE A rec0068.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #69: CREATE A rec0069.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #70: CREATE A rec0070.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #71: CREATE A rec0071.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #72: CREATE A rec0072.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #73: CREATE A rec0073.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #74: CREATE A rec0074.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #75: CREATE A rec0075.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #76: CREATE A rec0076.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #77: CREATE A rec0077.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #78: CREATE A rec0078.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #79: CREATE A rec0079.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #80: CREATE A rec0080.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #81: CREATE A rec0081.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #82: CREATE A rec0082.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #83: CREATE A rec0083.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #84: CREATE A rec0084.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #85: CREATE A rec0085.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #86: CREATE A rec0086.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #87: CREATE A rec0087.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #88: CREATE A rec0088.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #89: CREATE A rec0089.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #90: CREATE A rec0090.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #91: CREATE A rec0091.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #92: CREATE A rec0092.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #93: CREATE A rec0093.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #94: CREATE A rec0094.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #95: CREATE A rec0095.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #96: CREATE A rec0096.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #97: CREATE A rec0097.oXXX.de 1.2.3.4 ttl=0 integration_test.go:241: UNEXPECTED #98: CREATE A rec0098.oXXX.de 1.2.3.4 ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#18 === RUN TestDNSProviders/oXXX.de/21:pager601_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/22:pager1201_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/23:CAA:CAA_record integration_test.go:220: CREATE CAA oXXX.de 0 issue "letsencrypt.org" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE CAA oXXX.de 0 issue "letsencrypt.org" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#19 === RUN TestDNSProviders/oXXX.de/24:CAA_with_;:CAA_many_records integration_test.go:220: CREATE CAA oXXX.de 0 issuewild ";" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE CAA oXXX.de 0 issuewild ";" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#20 === RUN TestDNSProviders/oXXX.de/25:Issue_1374:CAA_spaces integration_test.go:220: CREATE CAA oXXX.de 0 issue "letsencrypt.org; validationmethods=dns-01; accounturi=https://acme-v02.api.letsencrypt.org/acme/acct/1234" ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE CAA oXXX.de 0 issue "letsencrypt.org; validationmethods=dns-01; accounturi=https://acme-v02.api.letsencrypt.org/acme/acct/1234" ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#21 === RUN TestDNSProviders/oXXX.de/26:NAPTR_***SKIPPED(CanUseNAPTR_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/27:PTR_***SKIPPED(CanUsePTR_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/28:SOA_***SKIPPED(CanUseSOA_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/29:SRV:SRV_record integration_test.go:220: CREATE SRV _sip._tcp.oXXX.de 5 6 7 foo.com. ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 1. integration_test.go:241: UNEXPECTED #0: CREATE SRV _sip._tcp.oXXX.de 5 6 7 foo.com. ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#22 === RUN TestDNSProviders/oXXX.de/30:SRV_w/_null_target:Null_Target integration_test.go:220: CREATE SRV _sip._tcp.oXXX.de 52 62 72 foo.com. ttl=0 integration_test.go:220: CREATE SRV _sip._tcp.oXXX.de 15 65 75 . ttl=0 integration_test.go:239: Expected 0 corrections on second run, but found 2. integration_test.go:241: UNEXPECTED #0: CREATE SRV _sip._tcp.oXXX.de 52 62 72 foo.com. ttl=0 integration_test.go:241: UNEXPECTED #1: CREATE SRV _sip._tcp.oXXX.de 15 65 75 . ttl=0 === RUN TestDNSProviders/oXXX.de/Post_cleanup:Empty#23 === RUN TestDNSProviders/oXXX.de/31:SSHFP_***SKIPPED(CanUseSSHFP_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/32:TLSA_***SKIPPED(CanUseTLSA_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/33:DS_***SKIPPED(CanUseDS_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/34:DS_(children_only)_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/35:DS_(children_only)_CLOUDNS_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/36:ALIAS_***SKIPPED(CanUseAlias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/37:AZURE_ALIAS_***SKIPPED(CanUseAzureAlias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/38:R53_ALIAS2_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/39:R53_ALIAS_ORDER_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty === RUN TestDNSProviders/oXXX.de/40:CF_REDIRECT_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/41:CF_PROXY_***SKIPPED(disabled_by_only)***:Empty === RUN TestDNSProviders/oXXX.de/42:CF_WORKER_ROUTE_***SKIPPED(disabled_by_only)***:Empty --- FAIL: TestDNSProviders (25.84s) --- FAIL: TestDNSProviders/oXXX.de (24.98s) --- PASS: TestDNSProviders/oXXX.de/Clean_Slate:Empty (0.25s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Create_an_A_record (0.33s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Change_it (0.32s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Add_another (0.34s) --- PASS: TestDNSProviders/oXXX.de/00:GeneralACD:Add_another(same_name) (0.38s) --- FAIL: TestDNSProviders/oXXX.de/00:GeneralACD:Change_a_ttl (0.11s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty (0.59s) --- PASS: TestDNSProviders/oXXX.de/01:WildcardACD:Create_wildcard (0.46s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#01 (0.37s) --- PASS: TestDNSProviders/oXXX.de/02:CNAME:Create_a_CNAME (0.31s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#02 (0.23s) --- PASS: TestDNSProviders/oXXX.de/03:MX:MX_record (0.31s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#03 (0.21s) --- PASS: TestDNSProviders/oXXX.de/04:Null_MX_***SKIPPED(excluded_by_not("NETCUP"))***:Empty (0.10s) --- PASS: TestDNSProviders/oXXX.de/05:NS_***SKIPPED(excluded_by_not("NETCUP"))***:Empty (0.08s) --- FAIL: TestDNSProviders/oXXX.de/06:IGNORE_NAME_function:Create_some_records (0.36s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#04 (0.24s) --- FAIL: TestDNSProviders/oXXX.de/07:IGNORE_NAME_apex:Create_some_records (0.57s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#05 (0.35s) --- PASS: TestDNSProviders/oXXX.de/08:IGNORE_TARGET_function:Create_some_records (0.45s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#06 (0.38s) --- FAIL: TestDNSProviders/oXXX.de/09:simple_TXT:Create_a_TXT (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#07 (0.08s) --- FAIL: TestDNSProviders/oXXX.de/10:simple_TXT-spf1:Create_a_TXT/SPF (0.28s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#08 (0.12s) --- FAIL: TestDNSProviders/oXXX.de/11:long_TXT:Create_long_TXT (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#09 (0.11s) --- SKIP: TestDNSProviders/oXXX.de/12:complex_TXT:TXT_with_0-octel_string (0.00s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#10 (0.10s) --- FAIL: TestDNSProviders/oXXX.de/13:long_TXT:Create_a_505_TXT (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#11 (0.08s) --- FAIL: TestDNSProviders/oXXX.de/14:TXTMulti:Create_TXTMulti_1 (0.26s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#12 (0.09s) --- FAIL: TestDNSProviders/oXXX.de/15:TXTMulti-same:Create_TXTMulti_1 (0.24s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#13 (0.10s) --- PASS: TestDNSProviders/oXXX.de/16:TypeChange:Create_a_CNAME (0.34s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#14 (0.23s) --- PASS: TestDNSProviders/oXXX.de/17:Case_Sensitivity:Create_CAPS (0.33s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#15 (0.22s) --- PASS: TestDNSProviders/oXXX.de/18:IDNA:Internationalized_name (0.34s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#16 (0.21s) --- PASS: TestDNSProviders/oXXX.de/19:IDNAs_in_CNAME_targets:IDN_CNAME_AND_Target (0.29s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#17 (0.24s) --- FAIL: TestDNSProviders/oXXX.de/20:pager101:99_records (11.55s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#18 (0.05s) --- PASS: TestDNSProviders/oXXX.de/21:pager601_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/22:pager1201_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- FAIL: TestDNSProviders/oXXX.de/23:CAA:CAA_record (0.20s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#19 (0.05s) --- FAIL: TestDNSProviders/oXXX.de/24:CAA_with_;:CAA_many_records (0.19s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#20 (0.06s) --- FAIL: TestDNSProviders/oXXX.de/25:Issue_1374:CAA_spaces (0.17s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#21 (0.07s) --- PASS: TestDNSProviders/oXXX.de/26:NAPTR_***SKIPPED(CanUseNAPTR_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/27:PTR_***SKIPPED(CanUsePTR_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/28:SOA_***SKIPPED(CanUseSOA_not_supported)***:Empty (0.06s) --- FAIL: TestDNSProviders/oXXX.de/29:SRV:SRV_record (0.17s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#22 (0.06s) --- FAIL: TestDNSProviders/oXXX.de/30:SRV_w/_null_target:Null_Target (0.25s) --- PASS: TestDNSProviders/oXXX.de/Post_cleanup:Empty#23 (0.08s) --- PASS: TestDNSProviders/oXXX.de/31:SSHFP_***SKIPPED(CanUseSSHFP_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/32:TLSA_***SKIPPED(CanUseTLSA_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/33:DS_***SKIPPED(CanUseDS_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/34:DS_(children_only)_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/35:DS_(children_only)_CLOUDNS_***SKIPPED(CanUseDSForChildren_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/36:ALIAS_***SKIPPED(CanUseAlias_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/37:AZURE_ALIAS_***SKIPPED(CanUseAzureAlias_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/38:R53_ALIAS2_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/39:R53_ALIAS_ORDER_***SKIPPED(CanUseRoute53Alias_not_supported)***:Empty (0.06s) --- PASS: TestDNSProviders/oXXX.de/40:CF_REDIRECT_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/41:CF_PROXY_***SKIPPED(disabled_by_only)***:Empty (0.05s) --- PASS: TestDNSProviders/oXXX.de/42:CF_WORKER_ROUTE_***SKIPPED(disabled_by_only)***:Empty (0.06s) === RUN TestDualProviders integration_test.go:312: Skipping. DocDualHost == Cannot --- SKIP: TestDualProviders (0.06s) FAIL exit status 1 FAIL github.com/StackExchange/dnscontrol/v3/integrationTest 25.942s Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
Any update for the dnssec feature? In a first implementation, maybe managing a non multi provider case would be a good start? A simple usage with dnscontrol that generates bind zones or to a single provider and that would manage the generation / rotation of the keys as well as the declaration of the latter to the registry. That would be a good start, wouldn't it? |
@pierrehenrymuller: There's currently no active development on DNSSEC features. To be totally transparent: it isn't a feature that my employer needs, therefore it is a feature that will have to come from the community. Your proposal sounds good to me and I would be glad to coach a volunteer through implementing it. |
Friendly ping? |
More protocol context: https://www.ietf.org/archive/id/draft-thomassen-dnsop-mske-00.html |
Just started thinking about this and wanted to write down notes for the future.
One thing I think would be interesting for DNSControl to manage would be DNSSEC records. This really has two parts:
I would love for dnscontrol to be able to activate DNSSEC for a domain with minimal effort required.
A few issues I foresee:
Provider support is fairly limited.
Of the registrars we support, gandi has an api. name.com has functionality in the web ui, but no api. route53 as a registrar supports dnssec, but not as a dns provider.
As far as DNS providers go, gcloud has alpha support, gandi appears to support it, cloudflare has some sort of support, and all others seem to not. We could certainly do it for the bind provider with some work.
Multiple providers
DNSSEC would definitely not work unless all providers for a zone support it. If they do, I believe they can all use a separate key, and we can add multiple DS records via the registrar.
Most cloud providers provide only a "just turn it on" model where they maintain all the keys and just give you the DS info to give the registrar.
Bind may or may not be worth implementing anything for. Maybe the keys live on the actual server, and part of the process of deploying zonefiles is using dnssec-signzone or something.
The text was updated successfully, but these errors were encountered: