mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-08 03:33:56 +00:00
Revert "Clean up DNS e2e wrt Jessie/Wheezy"
This reverts commit eeb36da2b97e87b3534c7bece9355cefc6f16472.
This commit is contained in:
parent
b228aebaf2
commit
094a11b5cb
@ -58,13 +58,15 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
fmt.Sprintf("kubernetes.default.svc.%s", framework.TestContext.ClusterDNSDomain),
|
fmt.Sprintf("kubernetes.default.svc.%s", framework.TestContext.ClusterDNSDomain),
|
||||||
}
|
}
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, nil, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, nil, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, nil, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
// Added due to #8512. This is critical for GCE and GKE deployments.
|
// Added due to #8512. This is critical for GCE and GKE deployments.
|
||||||
@ -78,13 +80,15 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, nil, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, nil, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, nil, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
// [LinuxOnly]: As Windows currently does not support resolving PQDNs.
|
// [LinuxOnly]: As Windows currently does not support resolving PQDNs.
|
||||||
@ -97,13 +101,15 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", dnsTestPodHostName, dnsTestServiceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", dnsTestPodHostName, dnsTestServiceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
||||||
hostEntries := []string{hostFQDN, dnsTestPodHostName}
|
hostEntries := []string{hostFQDN, dnsTestPodHostName}
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, hostEntries, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, hostEntries, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, hostEntries, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -115,13 +121,15 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", dnsTestPodHostName, dnsTestServiceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", dnsTestPodHostName, dnsTestServiceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
||||||
hostEntries := []string{hostFQDN, dnsTestPodHostName}
|
hostEntries := []string{hostFQDN, dnsTestPodHostName}
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(nil, hostEntries, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(nil, hostEntries, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(nil, hostEntries, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes /etc/hosts and exposes the results by HTTP.
|
// Run a pod which probes /etc/hosts and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe /etc/hosts")
|
ginkgo.By("creating a pod to probe /etc/hosts")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -164,15 +172,17 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
pod.ObjectMeta.Labels = testServiceSelector
|
pod.ObjectMeta.Labels = testServiceSelector
|
||||||
|
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -215,15 +225,17 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
pod.ObjectMeta.Labels = testServiceSelector
|
pod.ObjectMeta.Labels = testServiceSelector
|
||||||
|
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -253,17 +265,19 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", podHostname, serviceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", podHostname, serviceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
||||||
hostNames := []string{hostFQDN, podHostname}
|
hostNames := []string{hostFQDN, podHostname}
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(nil, hostNames, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(nil, hostNames, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(nil, hostNames, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod1 := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod1 := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
pod1.ObjectMeta.Labels = testServiceSelector
|
pod1.ObjectMeta.Labels = testServiceSelector
|
||||||
pod1.Spec.Hostname = podHostname
|
pod1.Spec.Hostname = podHostname
|
||||||
pod1.Spec.Subdomain = serviceName
|
pod1.Spec.Subdomain = serviceName
|
||||||
|
|
||||||
validateDNSResults(ctx, f, pod1, fileNames)
|
validateDNSResults(ctx, f, pod1, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -294,17 +308,19 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
subdomain := fmt.Sprintf("%s.%s.svc.%s", serviceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
subdomain := fmt.Sprintf("%s.%s.svc.%s", serviceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
||||||
namesToResolve := []string{hostFQDN, subdomain}
|
namesToResolve := []string{hostFQDN, subdomain}
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, nil, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, nil, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, nil, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod1 := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod1 := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
pod1.ObjectMeta.Labels = testServiceSelector
|
pod1.ObjectMeta.Labels = testServiceSelector
|
||||||
pod1.Spec.Hostname = podHostname
|
pod1.Spec.Hostname = podHostname
|
||||||
pod1.Spec.Subdomain = serviceName
|
pod1.Spec.Subdomain = serviceName
|
||||||
|
|
||||||
validateDNSResults(ctx, f, pod1, fileNames)
|
validateDNSResults(ctx, f, pod1, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -327,14 +343,16 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
return f.ClientSet.CoreV1().Services(f.Namespace.Name).Delete(ctx, externalNameService.Name, metav1.DeleteOptions{})
|
return f.ClientSet.CoreV1().Services(f.Namespace.Name).Delete(ctx, externalNameService.Name, metav1.DeleteOptions{})
|
||||||
})
|
})
|
||||||
hostFQDN := fmt.Sprintf("%s.%s.svc.%s", serviceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
hostFQDN := fmt.Sprintf("%s.%s.svc.%s", serviceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
||||||
probeCmd, fileName := createTargetedProbeCommand(hostFQDN, "CNAME", "dns")
|
wheezyProbeCmd, wheezyFileName := createTargetedProbeCommand(hostFQDN, "CNAME", "wheezy")
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileName := createTargetedProbeCommand(hostFQDN, "CNAME", "jessie")
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod1 := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod1 := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
|
|
||||||
validateTargetedProbeOutput(ctx, f, pod1, []string{fileName}, "foo.example.com.")
|
validateTargetedProbeOutput(ctx, f, pod1, []string{wheezyFileName, jessieFileName}, "foo.example.com.")
|
||||||
|
|
||||||
// Test changing the externalName field
|
// Test changing the externalName field
|
||||||
ginkgo.By("changing the externalName to bar.example.com")
|
ginkgo.By("changing the externalName to bar.example.com")
|
||||||
@ -342,14 +360,16 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
s.Spec.ExternalName = "bar.example.com"
|
s.Spec.ExternalName = "bar.example.com"
|
||||||
})
|
})
|
||||||
framework.ExpectNoError(err, "failed to change externalName of service: %s", serviceName)
|
framework.ExpectNoError(err, "failed to change externalName of service: %s", serviceName)
|
||||||
probeCmd, fileName = createTargetedProbeCommand(hostFQDN, "CNAME", "dns")
|
wheezyProbeCmd, wheezyFileName = createTargetedProbeCommand(hostFQDN, "CNAME", "wheezy")
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileName = createTargetedProbeCommand(hostFQDN, "CNAME", "jessie")
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a second pod to probe DNS")
|
ginkgo.By("creating a second pod to probe DNS")
|
||||||
pod2 := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod2 := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
|
|
||||||
validateTargetedProbeOutput(ctx, f, pod2, []string{fileName}, "bar.example.com.")
|
validateTargetedProbeOutput(ctx, f, pod2, []string{wheezyFileName, jessieFileName}, "bar.example.com.")
|
||||||
|
|
||||||
// Test changing type from ExternalName to ClusterIP
|
// Test changing type from ExternalName to ClusterIP
|
||||||
ginkgo.By("changing the service to type=ClusterIP")
|
ginkgo.By("changing the service to type=ClusterIP")
|
||||||
@ -366,17 +386,19 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
}
|
}
|
||||||
// TODO: For dual stack we can run from here two createTargetedProbeCommand()
|
// TODO: For dual stack we can run from here two createTargetedProbeCommand()
|
||||||
// one looking for an A record and another one for an AAAA record
|
// one looking for an A record and another one for an AAAA record
|
||||||
probeCmd, fileName = createTargetedProbeCommand(hostFQDN, targetRecord, "dns")
|
wheezyProbeCmd, wheezyFileName = createTargetedProbeCommand(hostFQDN, targetRecord, "wheezy")
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileName = createTargetedProbeCommand(hostFQDN, targetRecord, "jessie")
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a third pod to probe DNS")
|
ginkgo.By("creating a third pod to probe DNS")
|
||||||
pod3 := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod3 := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
|
|
||||||
svc, err := f.ClientSet.CoreV1().Services(f.Namespace.Name).Get(ctx, externalNameService.Name, metav1.GetOptions{})
|
svc, err := f.ClientSet.CoreV1().Services(f.Namespace.Name).Get(ctx, externalNameService.Name, metav1.GetOptions{})
|
||||||
framework.ExpectNoError(err, "failed to get service: %s", externalNameService.Name)
|
framework.ExpectNoError(err, "failed to get service: %s", externalNameService.Name)
|
||||||
|
|
||||||
validateTargetedProbeOutput(ctx, f, pod3, []string{fileName}, svc.Spec.ClusterIP)
|
validateTargetedProbeOutput(ctx, f, pod3, []string{wheezyFileName, jessieFileName}, svc.Spec.ClusterIP)
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -548,8 +570,10 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", dnsTestPodHostName, dnsTestServiceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
hostFQDN := fmt.Sprintf("%s.%s.%s.svc.%s", dnsTestPodHostName, dnsTestServiceName, f.Namespace.Name, framework.TestContext.ClusterDNSDomain)
|
||||||
hostEntries := []string{hostFQDN, dnsTestPodHostName}
|
hostEntries := []string{hostFQDN, dnsTestPodHostName}
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, hostEntries, "", "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, hostEntries, "", "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, hostEntries, "", "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
ginkgo.By("Creating a pod with expanded DNS configuration to probe DNS")
|
ginkgo.By("Creating a pod with expanded DNS configuration to probe DNS")
|
||||||
testNdotsValue := "5"
|
testNdotsValue := "5"
|
||||||
@ -561,7 +585,7 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
fmt.Sprintf("%038d.k8s.io", 5),
|
fmt.Sprintf("%038d.k8s.io", 5),
|
||||||
fmt.Sprintf("%038d.k8s.io", 6), // 260 characters
|
fmt.Sprintf("%038d.k8s.io", 6), // 260 characters
|
||||||
}
|
}
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
pod.Spec.DNSPolicy = v1.DNSClusterFirst
|
pod.Spec.DNSPolicy = v1.DNSClusterFirst
|
||||||
pod.Spec.DNSConfig = &v1.PodDNSConfig{
|
pod.Spec.DNSConfig = &v1.PodDNSConfig{
|
||||||
Searches: testSearchPaths,
|
Searches: testSearchPaths,
|
||||||
@ -572,7 +596,7 @@ var _ = common.SIGDescribe("DNS", func() {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
@ -639,16 +663,18 @@ var _ = common.SIGDescribe("DNS HostNetwork", func() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
// TODO: Validate both IPv4 and IPv6 families for dual-stack
|
||||||
probeCmd, fileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "dns", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
wheezyProbeCmd, wheezyFileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "wheezy", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
ginkgo.By("Running these commands: " + probeCmd + "\n")
|
jessieProbeCmd, jessieFileNames := createProbeCommand(namesToResolve, nil, regularService.Spec.ClusterIP, "jessie", f.Namespace.Name, framework.TestContext.ClusterDNSDomain, framework.TestContext.ClusterIsIPv6())
|
||||||
|
ginkgo.By("Running these commands on wheezy: " + wheezyProbeCmd + "\n")
|
||||||
|
ginkgo.By("Running these commands on jessie: " + jessieProbeCmd + "\n")
|
||||||
|
|
||||||
// Run a pod which probes DNS and exposes the results by HTTP.
|
// Run a pod which probes DNS and exposes the results by HTTP.
|
||||||
ginkgo.By("creating a pod to probe DNS")
|
ginkgo.By("creating a pod to probe DNS")
|
||||||
pod := createDNSPod(f.Namespace.Name, probeCmd, dnsTestPodHostName, dnsTestServiceName)
|
pod := createDNSPod(f.Namespace.Name, wheezyProbeCmd, jessieProbeCmd, dnsTestPodHostName, dnsTestServiceName)
|
||||||
pod.ObjectMeta.Labels = testServiceSelector
|
pod.ObjectMeta.Labels = testServiceSelector
|
||||||
pod.Spec.HostNetwork = true
|
pod.Spec.HostNetwork = true
|
||||||
pod.Spec.DNSPolicy = v1.DNSClusterFirstWithHostNet
|
pod.Spec.DNSPolicy = v1.DNSClusterFirstWithHostNet
|
||||||
validateDNSResults(ctx, f, pod, fileNames)
|
validateDNSResults(ctx, f, pod, append(wheezyFileNames, jessieFileNames...))
|
||||||
})
|
})
|
||||||
|
|
||||||
// https://issues.k8s.io/67019
|
// https://issues.k8s.io/67019
|
||||||
|
@ -35,6 +35,7 @@ import (
|
|||||||
clientset "k8s.io/client-go/kubernetes"
|
clientset "k8s.io/client-go/kubernetes"
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
e2epod "k8s.io/kubernetes/test/e2e/framework/pod"
|
e2epod "k8s.io/kubernetes/test/e2e/framework/pod"
|
||||||
|
imageutils "k8s.io/kubernetes/test/utils/image"
|
||||||
dnsclient "k8s.io/kubernetes/third_party/forked/golang/net"
|
dnsclient "k8s.io/kubernetes/third_party/forked/golang/net"
|
||||||
admissionapi "k8s.io/pod-security-admission/api"
|
admissionapi "k8s.io/pod-security-admission/api"
|
||||||
|
|
||||||
@ -351,7 +352,7 @@ func (t *dnsTestCommon) deleteDNSServerPod(ctx context.Context) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func createDNSPod(namespace, probeCmd, podHostName, serviceName string) *v1.Pod {
|
func createDNSPod(namespace, wheezyProbeCmd, jessieProbeCmd, podHostName, serviceName string) *v1.Pod {
|
||||||
podName := "dns-test-" + string(uuid.NewUUID())
|
podName := "dns-test-" + string(uuid.NewUUID())
|
||||||
volumes := []v1.Volume{
|
volumes := []v1.Volume{
|
||||||
{
|
{
|
||||||
@ -372,10 +373,17 @@ func createDNSPod(namespace, probeCmd, podHostName, serviceName string) *v1.Pod
|
|||||||
dnsPod := e2epod.NewAgnhostPod(namespace, podName, volumes, mounts, nil, "test-webserver")
|
dnsPod := e2epod.NewAgnhostPod(namespace, podName, volumes, mounts, nil, "test-webserver")
|
||||||
dnsPod.Spec.Containers[0].Name = "webserver"
|
dnsPod.Spec.Containers[0].Name = "webserver"
|
||||||
|
|
||||||
querier := e2epod.NewAgnhostContainer("querier", mounts, nil, probeCmd)
|
querier := e2epod.NewAgnhostContainer("querier", mounts, nil, wheezyProbeCmd)
|
||||||
querier.Command = []string{"sh", "-c"}
|
querier.Command = []string{"sh", "-c"}
|
||||||
|
|
||||||
dnsPod.Spec.Containers = append(dnsPod.Spec.Containers, querier)
|
jessieQuerier := v1.Container{
|
||||||
|
Name: "jessie-querier",
|
||||||
|
Image: imageutils.GetE2EImage(imageutils.JessieDnsutils),
|
||||||
|
Command: []string{"sh", "-c", jessieProbeCmd},
|
||||||
|
VolumeMounts: mounts,
|
||||||
|
}
|
||||||
|
|
||||||
|
dnsPod.Spec.Containers = append(dnsPod.Spec.Containers, querier, jessieQuerier)
|
||||||
dnsPod.Spec.Hostname = podHostName
|
dnsPod.Spec.Hostname = podHostName
|
||||||
dnsPod.Spec.Subdomain = serviceName
|
dnsPod.Spec.Subdomain = serviceName
|
||||||
|
|
||||||
|
@ -565,7 +565,7 @@ func TestConcurrentAccessToSingleVolume(ctx context.Context, f *framework.Framew
|
|||||||
SeLinuxLabel: e2epod.GetLinuxLabel(),
|
SeLinuxLabel: e2epod.GetLinuxLabel(),
|
||||||
NodeSelection: node,
|
NodeSelection: node,
|
||||||
PVCsReadOnly: readOnly,
|
PVCsReadOnly: readOnly,
|
||||||
ImageID: e2epod.GetTestImageID(imageutils.Agnhost),
|
ImageID: e2epod.GetTestImageID(imageutils.JessieDnsutils),
|
||||||
}
|
}
|
||||||
pod, err := e2epod.CreateSecPodWithNodeSelection(ctx, cs, &podConfig, f.Timeouts.PodStart)
|
pod, err := e2epod.CreateSecPodWithNodeSelection(ctx, cs, &podConfig, f.Timeouts.PodStart)
|
||||||
framework.ExpectNoError(err)
|
framework.ExpectNoError(err)
|
||||||
@ -687,7 +687,7 @@ func TestConcurrentAccessToRelatedVolumes(ctx context.Context, f *framework.Fram
|
|||||||
SeLinuxLabel: e2epod.GetLinuxLabel(),
|
SeLinuxLabel: e2epod.GetLinuxLabel(),
|
||||||
NodeSelection: node,
|
NodeSelection: node,
|
||||||
PVCsReadOnly: false,
|
PVCsReadOnly: false,
|
||||||
ImageID: e2epod.GetTestImageID(imageutils.Agnhost),
|
ImageID: e2epod.GetTestImageID(imageutils.JessieDnsutils),
|
||||||
}
|
}
|
||||||
pod, err := e2epod.CreateSecPodWithNodeSelection(ctx, cs, &podConfig, f.Timeouts.PodStart)
|
pod, err := e2epod.CreateSecPodWithNodeSelection(ctx, cs, &podConfig, f.Timeouts.PodStart)
|
||||||
defer func() {
|
defer func() {
|
||||||
|
@ -14,6 +14,7 @@ registry.k8s.io/e2e-test-images/apparmor-loader
|
|||||||
registry.k8s.io/e2e-test-images/busybox
|
registry.k8s.io/e2e-test-images/busybox
|
||||||
registry.k8s.io/e2e-test-images/httpd
|
registry.k8s.io/e2e-test-images/httpd
|
||||||
registry.k8s.io/e2e-test-images/ipc-utils
|
registry.k8s.io/e2e-test-images/ipc-utils
|
||||||
|
registry.k8s.io/e2e-test-images/jessie-dnsutils
|
||||||
registry.k8s.io/e2e-test-images/kitten
|
registry.k8s.io/e2e-test-images/kitten
|
||||||
registry.k8s.io/e2e-test-images/nautilus
|
registry.k8s.io/e2e-test-images/nautilus
|
||||||
registry.k8s.io/e2e-test-images/nginx
|
registry.k8s.io/e2e-test-images/nginx
|
||||||
|
@ -283,7 +283,7 @@ if [[ "${WHAT}" == "all-conformance" ]]; then
|
|||||||
# Discussed during Conformance Office Hours Meeting (2019.12.17):
|
# Discussed during Conformance Office Hours Meeting (2019.12.17):
|
||||||
# https://docs.google.com/document/d/1W31nXh9RYAb_VaYkwuPLd1hFxuRX3iU0DmaQ4lkCsX8/edit#heading=h.l87lu17xm9bh
|
# https://docs.google.com/document/d/1W31nXh9RYAb_VaYkwuPLd1hFxuRX3iU0DmaQ4lkCsX8/edit#heading=h.l87lu17xm9bh
|
||||||
shift
|
shift
|
||||||
conformance_images=("busybox" "agnhost" "kitten" "nautilus" "nonewprivs" "resource-consumer" "sample-apiserver")
|
conformance_images=("busybox" "agnhost" "jessie-dnsutils" "kitten" "nautilus" "nonewprivs" "resource-consumer" "sample-apiserver")
|
||||||
for image in "${conformance_images[@]}"; do
|
for image in "${conformance_images[@]}"; do
|
||||||
"${TASK}" "${image}" "$@"
|
"${TASK}" "${image}" "$@"
|
||||||
done
|
done
|
||||||
|
7
test/images/jessie-dnsutils/BASEIMAGE
Normal file
7
test/images/jessie-dnsutils/BASEIMAGE
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
linux/amd64=debian:jessie
|
||||||
|
linux/arm=arm32v7/debian:jessie
|
||||||
|
linux/arm64=arm64v8/debian:jessie
|
||||||
|
linux/ppc64le=ppc64le/debian:jessie
|
||||||
|
linux/s390x=s390x/debian:jessie
|
||||||
|
windows/amd64/1809=REGISTRY/busybox:1.29-2-windows-amd64-1809
|
||||||
|
windows/amd64/ltsc2022=REGISTRY/busybox:1.29-2-windows-amd64-ltsc2022
|
32
test/images/jessie-dnsutils/Dockerfile
Normal file
32
test/images/jessie-dnsutils/Dockerfile
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# Copyright 2016 The Kubernetes Authors.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
ARG BASEIMAGE
|
||||||
|
FROM $BASEIMAGE
|
||||||
|
|
||||||
|
CROSS_BUILD_COPY qemu-QEMUARCH-static /usr/bin/
|
||||||
|
|
||||||
|
# WARNING: Please note that the script below removes the security packages from arm64 and ppc64el images
|
||||||
|
# as they do not exist anymore in the debian repositories for jessie. So we do not recommend using this
|
||||||
|
# image for any production use and limit use of this image to just test scenarios.
|
||||||
|
|
||||||
|
COPY fixup-apt-list.sh /
|
||||||
|
RUN ["/fixup-apt-list.sh"]
|
||||||
|
|
||||||
|
RUN apt-get -q update && \
|
||||||
|
apt-get install -y --force-yes dnsutils && \
|
||||||
|
apt-get clean
|
||||||
|
|
||||||
|
ADD https://github.com/coredns/coredns/releases/download/v1.5.0/coredns_1.5.0_linux_BASEARCH.tgz /coredns.tgz
|
||||||
|
RUN tar -xzvf /coredns.tgz && rm -f /coredns.tgz
|
28
test/images/jessie-dnsutils/Dockerfile_windows
Normal file
28
test/images/jessie-dnsutils/Dockerfile_windows
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# Copyright 2020 The Kubernetes Authors.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
ARG BASEIMAGE
|
||||||
|
|
||||||
|
# We're using a Linux image to unpack the archive, then we're copying it over to Windows.
|
||||||
|
FROM --platform=linux/amd64 alpine:3.6 as prep
|
||||||
|
|
||||||
|
ADD https://github.com/coredns/coredns/releases/download/v1.5.0/coredns_1.5.0_windows_amd64.tgz /coredns.tgz
|
||||||
|
RUN tar -xzvf /coredns.tgz
|
||||||
|
|
||||||
|
FROM $BASEIMAGE
|
||||||
|
|
||||||
|
COPY --from=prep /coredns.exe /coredns.exe
|
||||||
|
|
||||||
|
# NOTE(claudiub): docker buildx sets the PATH env variable to a Linux-like PATH, which is not desirable.
|
||||||
|
ENV PATH="C:\dig\;C:\bin;C:\curl;C:\Windows\System32;C:\Windows;C:\Program Files\PowerShell;"
|
3
test/images/jessie-dnsutils/OWNERS
Normal file
3
test/images/jessie-dnsutils/OWNERS
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
approvers:
|
||||||
|
- dims
|
||||||
|
- mkumatag
|
4
test/images/jessie-dnsutils/README.md
Normal file
4
test/images/jessie-dnsutils/README.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# jessie-dnsutils
|
||||||
|
|
||||||
|
DNS utils but implemented in a different OS to have some basic check across OSes.
|
||||||
|
See issue #10161 for original issue and discussion.
|
1
test/images/jessie-dnsutils/VERSION
Normal file
1
test/images/jessie-dnsutils/VERSION
Normal file
@ -0,0 +1 @@
|
|||||||
|
1.7
|
32
test/images/jessie-dnsutils/fixup-apt-list.sh
Executable file
32
test/images/jessie-dnsutils/fixup-apt-list.sh
Executable file
@ -0,0 +1,32 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Copyright 2017 The Kubernetes Authors.
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
DEB_ARCH=$(dpkg --print-architecture)
|
||||||
|
|
||||||
|
# http://security.debian.org/debian-security/dists/jessie/updates/InRelease is missing
|
||||||
|
# entries for some platforms, so we just remove the last line in sources.list in
|
||||||
|
# /etc/apt/sources.list which is "deb http://deb.debian.org/debian jessie-updates main"
|
||||||
|
|
||||||
|
case ${DEB_ARCH} in
|
||||||
|
s390x|arm64|ppc64el)
|
||||||
|
# We have to use the archive mirrors.
|
||||||
|
# See: https://lists.debian.org/debian-devel-announce/2019/03/msg00006.html
|
||||||
|
echo "deb http://archive.debian.org/debian/ jessie main contrib non-free" | tee /etc/apt/sources.list
|
||||||
|
echo "deb-src http://archive.debian.org/debian/ jessie main contrib non-free" | tee -a /etc/apt/sources.list
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
@ -175,6 +175,8 @@ const (
|
|||||||
InvalidRegistryImage
|
InvalidRegistryImage
|
||||||
// IpcUtils image
|
// IpcUtils image
|
||||||
IpcUtils
|
IpcUtils
|
||||||
|
// JessieDnsutils image
|
||||||
|
JessieDnsutils
|
||||||
// Kitten image
|
// Kitten image
|
||||||
Kitten
|
Kitten
|
||||||
// Nautilus image
|
// Nautilus image
|
||||||
@ -227,6 +229,7 @@ func initImageConfigs(list RegistryList) (map[ImageID]Config, map[ImageID]Config
|
|||||||
configs[HttpdNew] = Config{list.PromoterE2eRegistry, "httpd", "2.4.39-4"}
|
configs[HttpdNew] = Config{list.PromoterE2eRegistry, "httpd", "2.4.39-4"}
|
||||||
configs[InvalidRegistryImage] = Config{list.InvalidRegistry, "alpine", "3.1"}
|
configs[InvalidRegistryImage] = Config{list.InvalidRegistry, "alpine", "3.1"}
|
||||||
configs[IpcUtils] = Config{list.PromoterE2eRegistry, "ipc-utils", "1.3"}
|
configs[IpcUtils] = Config{list.PromoterE2eRegistry, "ipc-utils", "1.3"}
|
||||||
|
configs[JessieDnsutils] = Config{list.PromoterE2eRegistry, "jessie-dnsutils", "1.7"}
|
||||||
configs[Kitten] = Config{list.PromoterE2eRegistry, "kitten", "1.7"}
|
configs[Kitten] = Config{list.PromoterE2eRegistry, "kitten", "1.7"}
|
||||||
configs[Nautilus] = Config{list.PromoterE2eRegistry, "nautilus", "1.7"}
|
configs[Nautilus] = Config{list.PromoterE2eRegistry, "nautilus", "1.7"}
|
||||||
configs[NFSProvisioner] = Config{list.SigStorageRegistry, "nfs-provisioner", "v4.0.8"}
|
configs[NFSProvisioner] = Config{list.SigStorageRegistry, "nfs-provisioner", "v4.0.8"}
|
||||||
|
Loading…
Reference in New Issue
Block a user