mirror of https://github.com/k3s-io/k3s
Merge pull request #36785 from wlan0/kubelet
Automatic merge from submit-queue No need to ScrubDNS anymore @thockin This removes the DNS scrubber from kubelet.pull/6/head
commit
412a3d9914
|
@ -89,25 +89,10 @@ func (kl *Kubelet) providerRequiresNetworkingConfiguration() bool {
|
|||
return supported
|
||||
}
|
||||
|
||||
// Returns the list of DNS servers and DNS search domains.
|
||||
func (kl *Kubelet) parseResolvConf(reader io.Reader) (nameservers []string, searches []string, err error) {
|
||||
var scrubber dnsScrubber
|
||||
if kl.cloud != nil {
|
||||
scrubber = kl.cloud
|
||||
}
|
||||
return parseResolvConf(reader, scrubber)
|
||||
}
|
||||
|
||||
// A helper for testing.
|
||||
type dnsScrubber interface {
|
||||
ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)
|
||||
}
|
||||
|
||||
// parseResolveConf reads a resolv.conf file from the given reader, and parses
|
||||
// it into nameservers and searches, possibly returning an error. The given
|
||||
// dnsScrubber allows cloud providers to post-process dns names.
|
||||
// it into nameservers and searches, possibly returning an error.
|
||||
// TODO: move to utility package
|
||||
func parseResolvConf(reader io.Reader, dnsScrubber dnsScrubber) (nameservers []string, searches []string, err error) {
|
||||
func (kl *Kubelet) parseResolvConf(reader io.Reader) (nameservers []string, searches []string, err error) {
|
||||
file, err := ioutil.ReadAll(reader)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
|
@ -137,10 +122,10 @@ func parseResolvConf(reader io.Reader, dnsScrubber dnsScrubber) (nameservers []s
|
|||
}
|
||||
}
|
||||
|
||||
// Give the cloud-provider a chance to post-process DNS settings.
|
||||
if dnsScrubber != nil {
|
||||
nameservers, searches = dnsScrubber.ScrubDNS(nameservers, searches)
|
||||
}
|
||||
// There used to be code here to scrub DNS for each cloud, but doesn't
|
||||
// make sense anymore since cloudproviders are being factored out.
|
||||
// contact @thockin or @wlan0 for more information
|
||||
|
||||
return nameservers, searches, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -66,15 +66,6 @@ func TestNodeIPParam(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
type countingDNSScrubber struct {
|
||||
counter *int
|
||||
}
|
||||
|
||||
func (cds countingDNSScrubber) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string) {
|
||||
(*cds.counter)++
|
||||
return nameservers, searches
|
||||
}
|
||||
|
||||
func TestParseResolvConf(t *testing.T) {
|
||||
testCases := []struct {
|
||||
data string
|
||||
|
@ -104,8 +95,10 @@ func TestParseResolvConf(t *testing.T) {
|
|||
{"nameserver 1.2.3.4\nsearch foo\nnameserver 5.6.7.8\nsearch bar", []string{"1.2.3.4", "5.6.7.8"}, []string{"bar"}},
|
||||
{"#comment\nnameserver 1.2.3.4\n#comment\nsearch foo\ncomment", []string{"1.2.3.4"}, []string{"foo"}},
|
||||
}
|
||||
testKubelet := newTestKubelet(t, false /* controllerAttachDetachEnabled */)
|
||||
kubelet := testKubelet.kubelet
|
||||
for i, tc := range testCases {
|
||||
ns, srch, err := parseResolvConf(strings.NewReader(tc.data), nil)
|
||||
ns, srch, err := kubelet.parseResolvConf(strings.NewReader(tc.data))
|
||||
if err != nil {
|
||||
t.Errorf("expected success, got %v", err)
|
||||
continue
|
||||
|
@ -116,23 +109,6 @@ func TestParseResolvConf(t *testing.T) {
|
|||
if !reflect.DeepEqual(srch, tc.searches) {
|
||||
t.Errorf("[%d] expected searches %#v, got %#v", i, tc.searches, srch)
|
||||
}
|
||||
|
||||
counter := 0
|
||||
cds := countingDNSScrubber{&counter}
|
||||
ns, srch, err = parseResolvConf(strings.NewReader(tc.data), cds)
|
||||
if err != nil {
|
||||
t.Errorf("expected success, got %v", err)
|
||||
continue
|
||||
}
|
||||
if !reflect.DeepEqual(ns, tc.nameservers) {
|
||||
t.Errorf("[%d] expected nameservers %#v, got %#v", i, tc.nameservers, ns)
|
||||
}
|
||||
if !reflect.DeepEqual(srch, tc.searches) {
|
||||
t.Errorf("[%d] expected searches %#v, got %#v", i, tc.searches, srch)
|
||||
}
|
||||
if counter != 1 {
|
||||
t.Errorf("[%d] expected dnsScrubber to have been called: got %d", i, counter)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue