mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 22:17:14 +00:00
Merge pull request #8135 from pmorie/kubelet-tests
Improve kubelet test for env vars
This commit is contained in:
commit
4c6a4fc132
@ -1997,15 +1997,14 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
name string // the name of the test case
|
name string // the name of the test case
|
||||||
ns string // the namespace to generate environment for
|
ns string // the namespace to generate environment for
|
||||||
container *api.Container // the container to use
|
container *api.Container // the container to use
|
||||||
masterServiceNamespace string // the namespace to read master service info from
|
masterServiceNs string // the namespace to read master service info from
|
||||||
nilLister bool // whether the lister should be nil
|
nilLister bool // whether the lister should be nil
|
||||||
expectedEnvs util.StringSet // a set of expected environment vars
|
expectedEnvs util.StringSet // a set of expected environment vars
|
||||||
expectedEnvSize int // total number of expected env vars
|
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
"api server = Y, kubelet = Y",
|
name: "api server = Y, kubelet = Y",
|
||||||
"test1",
|
ns: "test1",
|
||||||
&api.Container{
|
container: &api.Container{
|
||||||
Env: []api.EnvVar{
|
Env: []api.EnvVar{
|
||||||
{Name: "FOO", Value: "BAR"},
|
{Name: "FOO", Value: "BAR"},
|
||||||
{Name: "TEST_SERVICE_HOST", Value: "1.2.3.3"},
|
{Name: "TEST_SERVICE_HOST", Value: "1.2.3.3"},
|
||||||
@ -2017,9 +2016,10 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
{Name: "TEST_PORT_8083_TCP_ADDR", Value: "1.2.3.3"},
|
{Name: "TEST_PORT_8083_TCP_ADDR", Value: "1.2.3.3"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
api.NamespaceDefault,
|
masterServiceNs: api.NamespaceDefault,
|
||||||
false,
|
nilLister: false,
|
||||||
util.NewStringSet("FOO=BAR",
|
expectedEnvs: util.NewStringSet(
|
||||||
|
"FOO=BAR",
|
||||||
"TEST_SERVICE_HOST=1.2.3.3",
|
"TEST_SERVICE_HOST=1.2.3.3",
|
||||||
"TEST_SERVICE_PORT=8083",
|
"TEST_SERVICE_PORT=8083",
|
||||||
"TEST_PORT=tcp://1.2.3.3:8083",
|
"TEST_PORT=tcp://1.2.3.3:8083",
|
||||||
@ -2041,12 +2041,11 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
"KUBERNETES_RO_PORT_8082_TCP_PROTO=tcp",
|
"KUBERNETES_RO_PORT_8082_TCP_PROTO=tcp",
|
||||||
"KUBERNETES_RO_PORT_8082_TCP_PORT=8082",
|
"KUBERNETES_RO_PORT_8082_TCP_PORT=8082",
|
||||||
"KUBERNETES_RO_PORT_8082_TCP_ADDR=1.2.3.2"),
|
"KUBERNETES_RO_PORT_8082_TCP_ADDR=1.2.3.2"),
|
||||||
22,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"api server = Y, kubelet = N",
|
name: "api server = Y, kubelet = N",
|
||||||
"test1",
|
ns: "test1",
|
||||||
&api.Container{
|
container: &api.Container{
|
||||||
Env: []api.EnvVar{
|
Env: []api.EnvVar{
|
||||||
{Name: "FOO", Value: "BAR"},
|
{Name: "FOO", Value: "BAR"},
|
||||||
{Name: "TEST_SERVICE_HOST", Value: "1.2.3.3"},
|
{Name: "TEST_SERVICE_HOST", Value: "1.2.3.3"},
|
||||||
@ -2058,9 +2057,10 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
{Name: "TEST_PORT_8083_TCP_ADDR", Value: "1.2.3.3"},
|
{Name: "TEST_PORT_8083_TCP_ADDR", Value: "1.2.3.3"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
api.NamespaceDefault,
|
masterServiceNs: api.NamespaceDefault,
|
||||||
true,
|
nilLister: true,
|
||||||
util.NewStringSet("FOO=BAR",
|
expectedEnvs: util.NewStringSet(
|
||||||
|
"FOO=BAR",
|
||||||
"TEST_SERVICE_HOST=1.2.3.3",
|
"TEST_SERVICE_HOST=1.2.3.3",
|
||||||
"TEST_SERVICE_PORT=8083",
|
"TEST_SERVICE_PORT=8083",
|
||||||
"TEST_PORT=tcp://1.2.3.3:8083",
|
"TEST_PORT=tcp://1.2.3.3:8083",
|
||||||
@ -2068,19 +2068,19 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
"TEST_PORT_8083_TCP_PROTO=tcp",
|
"TEST_PORT_8083_TCP_PROTO=tcp",
|
||||||
"TEST_PORT_8083_TCP_PORT=8083",
|
"TEST_PORT_8083_TCP_PORT=8083",
|
||||||
"TEST_PORT_8083_TCP_ADDR=1.2.3.3"),
|
"TEST_PORT_8083_TCP_ADDR=1.2.3.3"),
|
||||||
8,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"api server = N; kubelet = Y",
|
name: "api server = N; kubelet = Y",
|
||||||
"test1",
|
ns: "test1",
|
||||||
&api.Container{
|
container: &api.Container{
|
||||||
Env: []api.EnvVar{
|
Env: []api.EnvVar{
|
||||||
{Name: "FOO", Value: "BAZ"},
|
{Name: "FOO", Value: "BAZ"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
api.NamespaceDefault,
|
masterServiceNs: api.NamespaceDefault,
|
||||||
false,
|
nilLister: false,
|
||||||
util.NewStringSet("FOO=BAZ",
|
expectedEnvs: util.NewStringSet(
|
||||||
|
"FOO=BAZ",
|
||||||
"TEST_SERVICE_HOST=1.2.3.3",
|
"TEST_SERVICE_HOST=1.2.3.3",
|
||||||
"TEST_SERVICE_PORT=8083",
|
"TEST_SERVICE_PORT=8083",
|
||||||
"TEST_PORT=tcp://1.2.3.3:8083",
|
"TEST_PORT=tcp://1.2.3.3:8083",
|
||||||
@ -2102,19 +2102,19 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
"KUBERNETES_RO_PORT_8082_TCP_PROTO=tcp",
|
"KUBERNETES_RO_PORT_8082_TCP_PROTO=tcp",
|
||||||
"KUBERNETES_RO_PORT_8082_TCP_PORT=8082",
|
"KUBERNETES_RO_PORT_8082_TCP_PORT=8082",
|
||||||
"KUBERNETES_RO_PORT_8082_TCP_ADDR=1.2.3.2"),
|
"KUBERNETES_RO_PORT_8082_TCP_ADDR=1.2.3.2"),
|
||||||
22,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"master service in pod ns",
|
name: "master service in pod ns",
|
||||||
"test2",
|
ns: "test2",
|
||||||
&api.Container{
|
container: &api.Container{
|
||||||
Env: []api.EnvVar{
|
Env: []api.EnvVar{
|
||||||
{Name: "FOO", Value: "ZAP"},
|
{Name: "FOO", Value: "ZAP"},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"kubernetes",
|
masterServiceNs: "kubernetes",
|
||||||
false,
|
nilLister: false,
|
||||||
util.NewStringSet("FOO=ZAP",
|
expectedEnvs: util.NewStringSet(
|
||||||
|
"FOO=ZAP",
|
||||||
"TEST_SERVICE_HOST=1.2.3.5",
|
"TEST_SERVICE_HOST=1.2.3.5",
|
||||||
"TEST_SERVICE_PORT=8085",
|
"TEST_SERVICE_PORT=8085",
|
||||||
"TEST_PORT=tcp://1.2.3.5:8085",
|
"TEST_PORT=tcp://1.2.3.5:8085",
|
||||||
@ -2136,15 +2136,14 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
"KUBERNETES_RO_PORT_8087_TCP_PROTO=tcp",
|
"KUBERNETES_RO_PORT_8087_TCP_PROTO=tcp",
|
||||||
"KUBERNETES_RO_PORT_8087_TCP_PORT=8087",
|
"KUBERNETES_RO_PORT_8087_TCP_PORT=8087",
|
||||||
"KUBERNETES_RO_PORT_8087_TCP_ADDR=1.2.3.7"),
|
"KUBERNETES_RO_PORT_8087_TCP_ADDR=1.2.3.7"),
|
||||||
22,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"pod in master service ns",
|
name: "pod in master service ns",
|
||||||
"kubernetes",
|
ns: "kubernetes",
|
||||||
&api.Container{},
|
container: &api.Container{},
|
||||||
"kubernetes",
|
masterServiceNs: "kubernetes",
|
||||||
false,
|
nilLister: false,
|
||||||
util.NewStringSet(
|
expectedEnvs: util.NewStringSet(
|
||||||
"NOT_SPECIAL_SERVICE_HOST=1.2.3.8",
|
"NOT_SPECIAL_SERVICE_HOST=1.2.3.8",
|
||||||
"NOT_SPECIAL_SERVICE_PORT=8088",
|
"NOT_SPECIAL_SERVICE_PORT=8088",
|
||||||
"NOT_SPECIAL_PORT=tcp://1.2.3.8:8088",
|
"NOT_SPECIAL_PORT=tcp://1.2.3.8:8088",
|
||||||
@ -2166,12 +2165,11 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
"KUBERNETES_RO_PORT_8087_TCP_PROTO=tcp",
|
"KUBERNETES_RO_PORT_8087_TCP_PROTO=tcp",
|
||||||
"KUBERNETES_RO_PORT_8087_TCP_PORT=8087",
|
"KUBERNETES_RO_PORT_8087_TCP_PORT=8087",
|
||||||
"KUBERNETES_RO_PORT_8087_TCP_ADDR=1.2.3.7"),
|
"KUBERNETES_RO_PORT_8087_TCP_ADDR=1.2.3.7"),
|
||||||
21,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"downward api pod",
|
name: "downward api pod",
|
||||||
"downward-api",
|
ns: "downward-api",
|
||||||
&api.Container{
|
container: &api.Container{
|
||||||
Env: []api.EnvVar{
|
Env: []api.EnvVar{
|
||||||
{
|
{
|
||||||
Name: "POD_NAME",
|
Name: "POD_NAME",
|
||||||
@ -2193,20 +2191,19 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"nothing",
|
masterServiceNs: "nothing",
|
||||||
true,
|
nilLister: true,
|
||||||
util.NewStringSet(
|
expectedEnvs: util.NewStringSet(
|
||||||
"POD_NAME=dapi-test-pod-name",
|
"POD_NAME=dapi-test-pod-name",
|
||||||
"POD_NAMESPACE=downward-api",
|
"POD_NAMESPACE=downward-api",
|
||||||
),
|
),
|
||||||
2,
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
testKubelet := newTestKubelet(t)
|
testKubelet := newTestKubelet(t)
|
||||||
kl := testKubelet.kubelet
|
kl := testKubelet.kubelet
|
||||||
kl.masterServiceNamespace = tc.masterServiceNamespace
|
kl.masterServiceNamespace = tc.masterServiceNs
|
||||||
if tc.nilLister {
|
if tc.nilLister {
|
||||||
kl.serviceLister = nil
|
kl.serviceLister = nil
|
||||||
} else {
|
} else {
|
||||||
@ -2226,12 +2223,13 @@ func TestMakeEnvironmentVariables(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
resultSet := util.NewStringSet(result...)
|
resultSet := util.NewStringSet(result...)
|
||||||
if !resultSet.IsSuperset(tc.expectedEnvs) {
|
if !resultSet.HasAll(tc.expectedEnvs.List()...) {
|
||||||
|
|
||||||
t.Errorf("[%v] Unexpected env entries; expected {%v}, got {%v}", tc.name, tc.expectedEnvs, resultSet)
|
t.Errorf("[%v] Unexpected env entries; expected {%v}, got {%v}", tc.name, tc.expectedEnvs, resultSet)
|
||||||
}
|
}
|
||||||
|
|
||||||
if a := len(resultSet); a != tc.expectedEnvSize {
|
if a, e := len(resultSet), len(tc.expectedEnvs); e != a {
|
||||||
t.Errorf("[%v] Unexpected number of env vars; expected %v, got %v", tc.name, tc.expectedEnvSize, a)
|
t.Errorf("[%v] Unexpected number of env vars; expected %v, got %v", tc.name, e, a)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user