Removes PQDNs from conformance tests and places them in their own tests#70156
Removes PQDNs from conformance tests and places them in their own tests#70156k8s-ci-robot merged 3 commits intokubernetes:masterfrom
Conversation
|
@nagiesek: Adding the "do-not-merge/release-note-label-needed" label because no release-note block was detected, please follow our release note process to remove it. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA. It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.
DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
|
/sig windows |
|
@nagiesek can you please sign the CLA? |
|
/ok-to-test |
|
/sig network |
|
Should be verified now? |
|
@thockin Based on SIG-NETWORK feedback, we have split these tests into conformance and non-conformance tests. Could you please review and provide feedback? |
|
/retest |
|
Even with this fix-up, the 2 DNS tests will not pass because they use the dig cmdlet, which isn't honoring DNS SearchList RegKeys in Windows containers. That being said, we still rely on this getting in (otherwise we would be forced to change the behavior of the DNS resolver itself on Windows). In a nutshell, to pass the tests on Windows after getting this in, we further need to do one of either alternatives:
|
|
I'm really torn about this behavior. Almost every example in the world that deals with service resolution in Kubernetes is using shortened examples like What is the expected breakage if we actually fixed this in the Windows side? |
|
@thockin The DNS resolver is a shared component that is used by applications running on Windows OS in general, so any changes need to be carefully examined. I talked to the Windows DNS team and we filed a work-item for the next Windows release to add a configuration parameter to make the behavior consistent with Linux. I'm not 100% confident this behavior may change by default for fear of possibly breaking networking for existing applications, but there should be some configuration we can set for containers at least. In the meanwhile, can we make [SIG-Windows] tests that are outside of conformance and use |
|
I guess I can cope with this. We should probably add a downwardAPI for cluster suffix. |
|
/lgtm |
|
/milestone v1.14 |
|
/test pull-kubernetes-e2e-gce |
|
/test pull-kubernetes-e2e-gce |
|
/test pull-kubernetes-e2e-kops-aws |
|
/test pull-kubernetes-godeps |
|
/test pull-kubernetes-e2e-gce |
|
@nagiesek: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
test/e2e/network/dns.go
Outdated
| namesToResolve := []string{ | ||
| "kubernetes.default", | ||
| "kubernetes.default.svc", | ||
| "kubernetes.default.svc.cluster", |
There was a problem hiding this comment.
kubernetes.default.svc.cluster is not supposed to be resolvable. That would mean that local would also be a DNS suffix, which is not. Also, as you can see, you've removed only kubernetes.default and kubernetes.default.svc from should provide DNS for the cluster while you're adding 3 here.
This is causing the test to fail.
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: nagiesek, thockin The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/release-note-none |
|
re-applying lgtm from @thockin /lgtm |
What type of PR is this?
/kind failing-test
What this PR does / why we need it:
Windows assumes any DNS query PQDN with a "." in it to be fully qualified. It's possible to fix this, but it is likely that doing so would break expectations of applications on Windows. After consulting with SIG-Network, we came to the conclusion that conformance tests shouldn't break this assumption nor be tied to the behavioral nuances of a DNS resolver of a specific OS. We propose to separate the current DNS conformance tests as follows:"
Which issue(s) this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)format, will close the issue(s) when PR gets merged):Fixes #
Special notes for your reviewer:
/sig testing
/area conformance
Does this PR introduce a user-facing change?:
NONE