From b465d579de610872e8da279915148cfca76ac45a Mon Sep 17 00:00:00 2001 From: Lee Verberne Date: Fri, 23 Aug 2019 12:40:27 +0000 Subject: [PATCH] Add ephemeral container to GetPodVolumeNames test --- pkg/volume/util/BUILD | 3 +++ pkg/volume/util/util_test.go | 46 ++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) diff --git a/pkg/volume/util/BUILD b/pkg/volume/util/BUILD index e51e73f6231..2b41f56bbd9 100644 --- a/pkg/volume/util/BUILD +++ b/pkg/volume/util/BUILD @@ -61,6 +61,7 @@ go_test( deps = [ "//pkg/apis/core/install:go_default_library", "//pkg/apis/core/v1/helper:go_default_library", + "//pkg/features:go_default_library", "//pkg/util/slice:go_default_library", "//pkg/volume:go_default_library", "//staging/src/k8s.io/api/core/v1:go_default_library", @@ -68,6 +69,8 @@ go_test( "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/types:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library", + "//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library", + "//staging/src/k8s.io/component-base/featuregate/testing:go_default_library", ] + select({ "@io_bazel_rules_go//go/platform:linux": [ "//staging/src/k8s.io/client-go/util/testing:go_default_library", diff --git a/pkg/volume/util/util_test.go b/pkg/volume/util/util_test.go index fea30ce346b..14066bffe55 100644 --- a/pkg/volume/util/util_test.go +++ b/pkg/volume/util/util_test.go @@ -25,7 +25,10 @@ import ( v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/sets" + utilfeature "k8s.io/apiserver/pkg/util/feature" + featuregatetesting "k8s.io/component-base/featuregate/testing" _ "k8s.io/kubernetes/pkg/apis/core/install" + "k8s.io/kubernetes/pkg/features" "reflect" "strings" @@ -661,6 +664,7 @@ func TestMakeAbsolutePath(t *testing.T) { } func TestGetPodVolumeNames(t *testing.T) { + defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.EphemeralContainers, true)() tests := []struct { name string pod *v1.Pod @@ -822,6 +826,48 @@ func TestGetPodVolumeNames(t *testing.T) { expectedMounts: sets.NewString("vol1", "vol3"), expectedDevices: sets.NewString("vol2", "vol4"), }, + { + name: "pod with ephemeral containers", + pod: &v1.Pod{ + Spec: v1.PodSpec{ + Containers: []v1.Container{ + { + Name: "container1", + VolumeMounts: []v1.VolumeMount{ + { + Name: "vol1", + }, + }, + }, + }, + EphemeralContainers: []v1.EphemeralContainer{ + { + EphemeralContainerCommon: v1.EphemeralContainerCommon{ + Name: "debugger", + VolumeMounts: []v1.VolumeMount{ + { + Name: "vol1", + }, + { + Name: "vol2", + }, + }, + }, + }, + }, + Volumes: []v1.Volume{ + { + Name: "vol1", + }, + { + Name: "vol2", + }, + }, + }, + }, + expectedMounts: sets.NewString("vol1", "vol2"), + expectedDevices: sets.NewString(), + }, } for _, test := range tests {