Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
de8bf9b6
Commit
de8bf9b6
authored
Nov 15, 2018
by
Jordan Liggitt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix scheduler and kubelet unit tests leaking feature flag changes
parent
248d6613
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
50 additions
and
30 deletions
+50
-30
BUILD
pkg/controller/daemon/BUILD
+1
-0
daemon_controller_test.go
pkg/controller/daemon/daemon_controller_test.go
+0
-0
BUILD
pkg/kubelet/cadvisor/BUILD
+1
-0
util_test.go
pkg/kubelet/cadvisor/util_test.go
+4
-3
kubelet_pods_test.go
pkg/kubelet/kubelet_pods_test.go
+3
-3
BUILD
pkg/kubelet/preemption/BUILD
+2
-0
preemption_test.go
pkg/kubelet/preemption/preemption_test.go
+4
-3
BUILD
pkg/kubelet/types/BUILD
+2
-0
pod_update_test.go
pkg/kubelet/types/pod_update_test.go
+3
-3
BUILD
pkg/scheduler/BUILD
+1
-0
BUILD
pkg/scheduler/algorithm/priorities/BUILD
+1
-0
balanced_resource_allocation_test.go
...algorithm/priorities/balanced_resource_allocation_test.go
+2
-2
BUILD
pkg/scheduler/algorithmprovider/BUILD
+2
-0
plugins_test.go
pkg/scheduler/algorithmprovider/plugins_test.go
+3
-1
BUILD
pkg/scheduler/internal/cache/BUILD
+1
-0
cache_test.go
pkg/scheduler/internal/cache/cache_test.go
+10
-9
scheduler_test.go
pkg/scheduler/scheduler_test.go
+1
-0
BUILD
plugin/pkg/admission/podtolerationrestriction/BUILD
+2
-0
admission_test.go
.../pkg/admission/podtolerationrestriction/admission_test.go
+3
-3
BUILD
plugin/pkg/admission/priority/BUILD
+1
-0
admission_test.go
plugin/pkg/admission/priority/admission_test.go
+3
-3
No files found.
pkg/controller/daemon/BUILD
View file @
de8bf9b6
...
@@ -84,6 +84,7 @@ go_test(
...
@@ -84,6 +84,7 @@ go_test(
"//staging/src/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/storage/names:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/storage/names:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
"//staging/src/k8s.io/client-go/testing:go_default_library",
"//staging/src/k8s.io/client-go/testing:go_default_library",
...
...
pkg/controller/daemon/daemon_controller_test.go
View file @
de8bf9b6
This diff is collapsed.
Click to expand it.
pkg/kubelet/cadvisor/BUILD
View file @
de8bf9b6
...
@@ -60,6 +60,7 @@ go_test(
...
@@ -60,6 +60,7 @@ go_test(
"//pkg/kubelet/types:go_default_library",
"//pkg/kubelet/types:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//vendor/github.com/google/cadvisor/info/v1:go_default_library",
"//vendor/github.com/google/cadvisor/info/v1:go_default_library",
"//vendor/github.com/google/cadvisor/metrics:go_default_library",
"//vendor/github.com/google/cadvisor/metrics:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
...
...
pkg/kubelet/cadvisor/util_test.go
View file @
de8bf9b6
...
@@ -19,14 +19,15 @@ limitations under the License.
...
@@ -19,14 +19,15 @@ limitations under the License.
package
cadvisor
package
cadvisor
import
(
import
(
"fmt"
"testing"
info
"github.com/google/cadvisor/info/v1"
info
"github.com/google/cadvisor/info/v1"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/assert"
"k8s.io/apimachinery/pkg/api/resource"
"k8s.io/apimachinery/pkg/api/resource"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
v1helper
"k8s.io/kubernetes/pkg/apis/core/v1/helper"
v1helper
"k8s.io/kubernetes/pkg/apis/core/v1/helper"
"k8s.io/kubernetes/pkg/features"
"k8s.io/kubernetes/pkg/features"
"testing"
)
)
func
TestCapacityFromMachineInfo
(
t
*
testing
.
T
)
{
func
TestCapacityFromMachineInfo
(
t
*
testing
.
T
)
{
...
@@ -42,7 +43,7 @@ func TestCapacityFromMachineInfo(t *testing.T) {
...
@@ -42,7 +43,7 @@ func TestCapacityFromMachineInfo(t *testing.T) {
}
}
// enable the features.HugePages
// enable the features.HugePages
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
HugePages
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
HugePages
,
true
)(
)
resourceList
:=
CapacityFromMachineInfo
(
machineInfo
)
resourceList
:=
CapacityFromMachineInfo
(
machineInfo
)
...
...
pkg/kubelet/kubelet_pods_test.go
View file @
de8bf9b6
...
@@ -34,6 +34,7 @@ import (
...
@@ -34,6 +34,7 @@ import (
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/types"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
core
"k8s.io/client-go/testing"
core
"k8s.io/client-go/testing"
"k8s.io/client-go/tools/record"
"k8s.io/client-go/tools/record"
...
@@ -42,6 +43,7 @@ import (
...
@@ -42,6 +43,7 @@ import (
// to "v1"?
// to "v1"?
_
"k8s.io/kubernetes/pkg/apis/core/install"
_
"k8s.io/kubernetes/pkg/apis/core/install"
"k8s.io/kubernetes/pkg/features"
kubecontainer
"k8s.io/kubernetes/pkg/kubelet/container"
kubecontainer
"k8s.io/kubernetes/pkg/kubelet/container"
containertest
"k8s.io/kubernetes/pkg/kubelet/container/testing"
containertest
"k8s.io/kubernetes/pkg/kubelet/container/testing"
"k8s.io/kubernetes/pkg/kubelet/server/portforward"
"k8s.io/kubernetes/pkg/kubelet/server/portforward"
...
@@ -91,9 +93,7 @@ func TestDisabledSubpath(t *testing.T) {
...
@@ -91,9 +93,7 @@ func TestDisabledSubpath(t *testing.T) {
},
},
}
}
utilfeature
.
DefaultFeatureGate
.
Set
(
"VolumeSubpath=false"
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
VolumeSubpath
,
false
)()
defer
utilfeature
.
DefaultFeatureGate
.
Set
(
"VolumeSubpath=true"
)
for
name
,
test
:=
range
cases
{
for
name
,
test
:=
range
cases
{
_
,
_
,
err
:=
makeMounts
(
&
pod
,
"/pod"
,
&
test
.
container
,
"fakepodname"
,
""
,
""
,
podVolumes
,
fm
,
nil
)
_
,
_
,
err
:=
makeMounts
(
&
pod
,
"/pod"
,
&
test
.
container
,
"fakepodname"
,
""
,
""
,
podVolumes
,
fm
,
nil
)
if
err
!=
nil
&&
!
test
.
expectError
{
if
err
!=
nil
&&
!
test
.
expectError
{
...
...
pkg/kubelet/preemption/BUILD
View file @
de8bf9b6
...
@@ -46,11 +46,13 @@ go_test(
...
@@ -46,11 +46,13 @@ go_test(
deps = [
deps = [
"//pkg/apis/core:go_default_library",
"//pkg/apis/core:go_default_library",
"//pkg/apis/scheduling:go_default_library",
"//pkg/apis/scheduling:go_default_library",
"//pkg/features:go_default_library",
"//pkg/kubelet/types:go_default_library",
"//pkg/kubelet/types:go_default_library",
"//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//staging/src/k8s.io/client-go/tools/record:go_default_library",
"//staging/src/k8s.io/client-go/tools/record:go_default_library",
],
],
)
)
pkg/kubelet/preemption/preemption_test.go
View file @
de8bf9b6
...
@@ -24,9 +24,11 @@ import (
...
@@ -24,9 +24,11 @@ import (
"k8s.io/apimachinery/pkg/api/resource"
"k8s.io/apimachinery/pkg/api/resource"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/client-go/tools/record"
"k8s.io/client-go/tools/record"
kubeapi
"k8s.io/kubernetes/pkg/apis/core"
kubeapi
"k8s.io/kubernetes/pkg/apis/core"
"k8s.io/kubernetes/pkg/apis/scheduling"
"k8s.io/kubernetes/pkg/apis/scheduling"
"k8s.io/kubernetes/pkg/features"
kubetypes
"k8s.io/kubernetes/pkg/kubelet/types"
kubetypes
"k8s.io/kubernetes/pkg/kubelet/types"
)
)
...
@@ -89,9 +91,7 @@ func getTestCriticalPodAdmissionHandler(podProvider *fakePodProvider, podKiller
...
@@ -89,9 +91,7 @@ func getTestCriticalPodAdmissionHandler(podProvider *fakePodProvider, podKiller
}
}
func
TestEvictPodsToFreeRequests
(
t
*
testing
.
T
)
{
func
TestEvictPodsToFreeRequests
(
t
*
testing
.
T
)
{
if
err
:=
utilfeature
.
DefaultFeatureGate
.
Set
(
"ExperimentalCriticalPodAnnotation=true"
);
err
!=
nil
{
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
ExperimentalCriticalPodAnnotation
,
true
)()
t
.
Errorf
(
"failed to set ExperimentalCriticalPodAnnotation to true: %v"
,
err
)
}
type
testRun
struct
{
type
testRun
struct
{
testName
string
testName
string
inputPods
[]
*
v1
.
Pod
inputPods
[]
*
v1
.
Pod
...
@@ -159,6 +159,7 @@ func BenchmarkGetPodsToPreempt(t *testing.B) {
...
@@ -159,6 +159,7 @@ func BenchmarkGetPodsToPreempt(t *testing.B) {
}
}
func
TestGetPodsToPreempt
(
t
*
testing
.
T
)
{
func
TestGetPodsToPreempt
(
t
*
testing
.
T
)
{
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
ExperimentalCriticalPodAnnotation
,
true
)()
type
testRun
struct
{
type
testRun
struct
{
testName
string
testName
string
preemptor
*
v1
.
Pod
preemptor
*
v1
.
Pod
...
...
pkg/kubelet/types/BUILD
View file @
de8bf9b6
...
@@ -38,9 +38,11 @@ go_test(
...
@@ -38,9 +38,11 @@ go_test(
],
],
embed = [":go_default_library"],
embed = [":go_default_library"],
deps = [
deps = [
"//pkg/features:go_default_library",
"//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/api/core/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
"//vendor/github.com/stretchr/testify/require:go_default_library",
"//vendor/github.com/stretchr/testify/require:go_default_library",
],
],
...
...
pkg/kubelet/types/pod_update_test.go
View file @
de8bf9b6
...
@@ -24,6 +24,8 @@ import (
...
@@ -24,6 +24,8 @@ import (
"k8s.io/api/core/v1"
"k8s.io/api/core/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/kubernetes/pkg/features"
)
)
func
TestGetValidatedSources
(
t
*
testing
.
T
)
{
func
TestGetValidatedSources
(
t
*
testing
.
T
)
{
...
@@ -116,9 +118,7 @@ func TestString(t *testing.T) {
...
@@ -116,9 +118,7 @@ func TestString(t *testing.T) {
}
}
func
TestIsCriticalPod
(
t
*
testing
.
T
)
{
func
TestIsCriticalPod
(
t
*
testing
.
T
)
{
if
err
:=
utilfeature
.
DefaultFeatureGate
.
Set
(
"ExperimentalCriticalPodAnnotation=true"
);
err
!=
nil
{
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
ExperimentalCriticalPodAnnotation
,
true
)()
t
.
Errorf
(
"failed to set ExperimentalCriticalPodAnnotation to true: %v"
,
err
)
}
cases
:=
[]
struct
{
cases
:=
[]
struct
{
pod
v1
.
Pod
pod
v1
.
Pod
expected
bool
expected
bool
...
...
pkg/scheduler/BUILD
View file @
de8bf9b6
...
@@ -66,6 +66,7 @@ go_test(
...
@@ -66,6 +66,7 @@ go_test(
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/util/wait:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
"//staging/src/k8s.io/client-go/listers/core/v1:go_default_library",
"//staging/src/k8s.io/client-go/listers/core/v1:go_default_library",
...
...
pkg/scheduler/algorithm/priorities/BUILD
View file @
de8bf9b6
...
@@ -79,6 +79,7 @@ go_test(
...
@@ -79,6 +79,7 @@ go_test(
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
"//vendor/github.com/stretchr/testify/assert:go_default_library",
],
],
)
)
...
...
pkg/scheduler/algorithm/priorities/balanced_resource_allocation_test.go
View file @
de8bf9b6
...
@@ -17,7 +17,6 @@ limitations under the License.
...
@@ -17,7 +17,6 @@ limitations under the License.
package
priorities
package
priorities
import
(
import
(
"fmt"
"reflect"
"reflect"
"testing"
"testing"
...
@@ -25,6 +24,7 @@ import (
...
@@ -25,6 +24,7 @@ import (
"k8s.io/apimachinery/pkg/api/resource"
"k8s.io/apimachinery/pkg/api/resource"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/kubernetes/pkg/features"
"k8s.io/kubernetes/pkg/features"
schedulerapi
"k8s.io/kubernetes/pkg/scheduler/api"
schedulerapi
"k8s.io/kubernetes/pkg/scheduler/api"
schedulercache
"k8s.io/kubernetes/pkg/scheduler/cache"
schedulercache
"k8s.io/kubernetes/pkg/scheduler/cache"
...
@@ -44,7 +44,7 @@ func getExistingVolumeCountForNode(pods []*v1.Pod, maxVolumes int) int {
...
@@ -44,7 +44,7 @@ func getExistingVolumeCountForNode(pods []*v1.Pod, maxVolumes int) int {
func
TestBalancedResourceAllocation
(
t
*
testing
.
T
)
{
func
TestBalancedResourceAllocation
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
podwithVol1
:=
v1
.
PodSpec
{
podwithVol1
:=
v1
.
PodSpec
{
Containers
:
[]
v1
.
Container
{
Containers
:
[]
v1
.
Container
{
{
{
...
...
pkg/scheduler/algorithmprovider/BUILD
View file @
de8bf9b6
...
@@ -18,8 +18,10 @@ go_test(
...
@@ -18,8 +18,10 @@ go_test(
srcs = ["plugins_test.go"],
srcs = ["plugins_test.go"],
embed = [":go_default_library"],
embed = [":go_default_library"],
deps = [
deps = [
"//pkg/features:go_default_library",
"//pkg/scheduler/factory:go_default_library",
"//pkg/scheduler/factory:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
],
],
)
)
...
...
pkg/scheduler/algorithmprovider/plugins_test.go
View file @
de8bf9b6
...
@@ -21,6 +21,8 @@ import (
...
@@ -21,6 +21,8 @@ import (
"testing"
"testing"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/kubernetes/pkg/features"
"k8s.io/kubernetes/pkg/scheduler/factory"
"k8s.io/kubernetes/pkg/scheduler/factory"
)
)
...
@@ -90,7 +92,7 @@ func TestApplyFeatureGates(t *testing.T) {
...
@@ -90,7 +92,7 @@ func TestApplyFeatureGates(t *testing.T) {
}
}
// Apply features for algorithm providers.
// Apply features for algorithm providers.
utilfeature
.
DefaultFeatureGate
.
Set
(
"TaintNodesByCondition=True"
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
TaintNodesByCondition
,
true
)(
)
ApplyFeatureGates
()
ApplyFeatureGates
()
...
...
pkg/scheduler/internal/cache/BUILD
View file @
de8bf9b6
...
@@ -40,6 +40,7 @@ go_test(
...
@@ -40,6 +40,7 @@ go_test(
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
"//staging/src/k8s.io/apimachinery/pkg/types:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
],
],
)
)
...
...
pkg/scheduler/internal/cache/cache_test.go
View file @
de8bf9b6
...
@@ -29,6 +29,7 @@ import (
...
@@ -29,6 +29,7 @@ import (
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/types"
"k8s.io/apimachinery/pkg/types"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/kubernetes/pkg/features"
"k8s.io/kubernetes/pkg/features"
priorityutil
"k8s.io/kubernetes/pkg/scheduler/algorithm/priorities/util"
priorityutil
"k8s.io/kubernetes/pkg/scheduler/algorithm/priorities/util"
schedulercache
"k8s.io/kubernetes/pkg/scheduler/cache"
schedulercache
"k8s.io/kubernetes/pkg/scheduler/cache"
...
@@ -92,7 +93,7 @@ func newNodeInfo(requestedResource *schedulercache.Resource,
...
@@ -92,7 +93,7 @@ func newNodeInfo(requestedResource *schedulercache.Resource,
// on node level.
// on node level.
func
TestAssumePodScheduled
(
t
*
testing
.
T
)
{
func
TestAssumePodScheduled
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
testPods
:=
[]
*
v1
.
Pod
{
testPods
:=
[]
*
v1
.
Pod
{
makeBasePod
(
t
,
nodeName
,
"test"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}}),
makeBasePod
(
t
,
nodeName
,
"test"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}}),
...
@@ -240,7 +241,7 @@ func assumeAndFinishBinding(cache *schedulerCache, pod *v1.Pod, assumedTime time
...
@@ -240,7 +241,7 @@ func assumeAndFinishBinding(cache *schedulerCache, pod *v1.Pod, assumedTime time
// The removal will be reflected in node info.
// The removal will be reflected in node info.
func
TestExpirePod
(
t
*
testing
.
T
)
{
func
TestExpirePod
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
testPods
:=
[]
*
v1
.
Pod
{
testPods
:=
[]
*
v1
.
Pod
{
makeBasePod
(
t
,
nodeName
,
"test-1"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}}),
makeBasePod
(
t
,
nodeName
,
"test-1"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}}),
...
@@ -299,7 +300,7 @@ func TestExpirePod(t *testing.T) {
...
@@ -299,7 +300,7 @@ func TestExpirePod(t *testing.T) {
// The pod info should still exist after manually expiring unconfirmed pods.
// The pod info should still exist after manually expiring unconfirmed pods.
func
TestAddPodWillConfirm
(
t
*
testing
.
T
)
{
func
TestAddPodWillConfirm
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
now
:=
time
.
Now
()
now
:=
time
.
Now
()
ttl
:=
10
*
time
.
Second
ttl
:=
10
*
time
.
Second
...
@@ -455,7 +456,7 @@ func TestAddPodWillReplaceAssumed(t *testing.T) {
...
@@ -455,7 +456,7 @@ func TestAddPodWillReplaceAssumed(t *testing.T) {
// TestAddPodAfterExpiration tests that a pod being Add()ed will be added back if expired.
// TestAddPodAfterExpiration tests that a pod being Add()ed will be added back if expired.
func
TestAddPodAfterExpiration
(
t
*
testing
.
T
)
{
func
TestAddPodAfterExpiration
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
ttl
:=
10
*
time
.
Second
ttl
:=
10
*
time
.
Second
basePod
:=
makeBasePod
(
t
,
nodeName
,
"test"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}})
basePod
:=
makeBasePod
(
t
,
nodeName
,
"test"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}})
...
@@ -504,7 +505,7 @@ func TestAddPodAfterExpiration(t *testing.T) {
...
@@ -504,7 +505,7 @@ func TestAddPodAfterExpiration(t *testing.T) {
// TestUpdatePod tests that a pod will be updated if added before.
// TestUpdatePod tests that a pod will be updated if added before.
func
TestUpdatePod
(
t
*
testing
.
T
)
{
func
TestUpdatePod
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
ttl
:=
10
*
time
.
Second
ttl
:=
10
*
time
.
Second
testPods
:=
[]
*
v1
.
Pod
{
testPods
:=
[]
*
v1
.
Pod
{
...
@@ -630,7 +631,7 @@ func TestUpdatePodAndGet(t *testing.T) {
...
@@ -630,7 +631,7 @@ func TestUpdatePodAndGet(t *testing.T) {
// TestExpireAddUpdatePod test the sequence that a pod is expired, added, then updated
// TestExpireAddUpdatePod test the sequence that a pod is expired, added, then updated
func
TestExpireAddUpdatePod
(
t
*
testing
.
T
)
{
func
TestExpireAddUpdatePod
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
ttl
:=
10
*
time
.
Second
ttl
:=
10
*
time
.
Second
testPods
:=
[]
*
v1
.
Pod
{
testPods
:=
[]
*
v1
.
Pod
{
...
@@ -727,7 +728,7 @@ func makePodWithEphemeralStorage(nodeName, ephemeralStorage string) *v1.Pod {
...
@@ -727,7 +728,7 @@ func makePodWithEphemeralStorage(nodeName, ephemeralStorage string) *v1.Pod {
func
TestEphemeralStorageResource
(
t
*
testing
.
T
)
{
func
TestEphemeralStorageResource
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
podE
:=
makePodWithEphemeralStorage
(
nodeName
,
"500"
)
podE
:=
makePodWithEphemeralStorage
(
nodeName
,
"500"
)
tests
:=
[]
struct
{
tests
:=
[]
struct
{
...
@@ -772,7 +773,7 @@ func TestEphemeralStorageResource(t *testing.T) {
...
@@ -772,7 +773,7 @@ func TestEphemeralStorageResource(t *testing.T) {
// TestRemovePod tests after added pod is removed, its information should also be subtracted.
// TestRemovePod tests after added pod is removed, its information should also be subtracted.
func
TestRemovePod
(
t
*
testing
.
T
)
{
func
TestRemovePod
(
t
*
testing
.
T
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
nodeName
:=
"node"
nodeName
:=
"node"
basePod
:=
makeBasePod
(
t
,
nodeName
,
"test"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}})
basePod
:=
makeBasePod
(
t
,
nodeName
,
"test"
,
"100m"
,
"500"
,
""
,
[]
v1
.
ContainerPort
{{
HostIP
:
"127.0.0.1"
,
HostPort
:
80
,
Protocol
:
"TCP"
}})
tests
:=
[]
struct
{
tests
:=
[]
struct
{
...
@@ -1126,7 +1127,7 @@ func BenchmarkList1kNodes30kPods(b *testing.B) {
...
@@ -1126,7 +1127,7 @@ func BenchmarkList1kNodes30kPods(b *testing.B) {
func
BenchmarkUpdate1kNodes30kPods
(
b
*
testing
.
B
)
{
func
BenchmarkUpdate1kNodes30kPods
(
b
*
testing
.
B
)
{
// Enable volumesOnNodeForBalancing to do balanced resource allocation
// Enable volumesOnNodeForBalancing to do balanced resource allocation
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
BalanceAttachedNodeVolumes
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
nil
,
utilfeature
.
DefaultFeatureGate
,
features
.
BalanceAttachedNodeVolumes
,
true
)(
)
cache
:=
setupCacheOf1kNodes30kPods
(
b
)
cache
:=
setupCacheOf1kNodes30kPods
(
b
)
b
.
ResetTimer
()
b
.
ResetTimer
()
for
n
:=
0
;
n
<
b
.
N
;
n
++
{
for
n
:=
0
;
n
<
b
.
N
;
n
++
{
...
...
pkg/scheduler/scheduler_test.go
View file @
de8bf9b6
...
@@ -33,6 +33,7 @@ import (
...
@@ -33,6 +33,7 @@ import (
"k8s.io/apimachinery/pkg/util/sets"
"k8s.io/apimachinery/pkg/util/sets"
"k8s.io/apimachinery/pkg/util/wait"
"k8s.io/apimachinery/pkg/util/wait"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/client-go/informers"
"k8s.io/client-go/informers"
clientsetfake
"k8s.io/client-go/kubernetes/fake"
clientsetfake
"k8s.io/client-go/kubernetes/fake"
corelister
"k8s.io/client-go/listers/core/v1"
corelister
"k8s.io/client-go/listers/core/v1"
...
...
plugin/pkg/admission/podtolerationrestriction/BUILD
View file @
de8bf9b6
...
@@ -12,6 +12,7 @@ go_test(
...
@@ -12,6 +12,7 @@ go_test(
embed = [":go_default_library"],
embed = [":go_default_library"],
deps = [
deps = [
"//pkg/apis/core:go_default_library",
"//pkg/apis/core:go_default_library",
"//pkg/features:go_default_library",
"//pkg/scheduler/api:go_default_library",
"//pkg/scheduler/api:go_default_library",
"//pkg/util/tolerations:go_default_library",
"//pkg/util/tolerations:go_default_library",
"//plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction:go_default_library",
"//plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction:go_default_library",
...
@@ -21,6 +22,7 @@ go_test(
...
@@ -21,6 +22,7 @@ go_test(
"//staging/src/k8s.io/apiserver/pkg/admission:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/admission:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/admission/initializer:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/admission/initializer:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes/fake:go_default_library",
...
...
plugin/pkg/admission/podtolerationrestriction/admission_test.go
View file @
de8bf9b6
...
@@ -27,10 +27,12 @@ import (
...
@@ -27,10 +27,12 @@ import (
"k8s.io/apiserver/pkg/admission"
"k8s.io/apiserver/pkg/admission"
genericadmissioninitializer
"k8s.io/apiserver/pkg/admission/initializer"
genericadmissioninitializer
"k8s.io/apiserver/pkg/admission/initializer"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/client-go/informers"
"k8s.io/client-go/informers"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/kubernetes/fake"
"k8s.io/client-go/kubernetes/fake"
api
"k8s.io/kubernetes/pkg/apis/core"
api
"k8s.io/kubernetes/pkg/apis/core"
"k8s.io/kubernetes/pkg/features"
schedulerapi
"k8s.io/kubernetes/pkg/scheduler/api"
schedulerapi
"k8s.io/kubernetes/pkg/scheduler/api"
"k8s.io/kubernetes/pkg/util/tolerations"
"k8s.io/kubernetes/pkg/util/tolerations"
pluginapi
"k8s.io/kubernetes/plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction"
pluginapi
"k8s.io/kubernetes/plugin/pkg/admission/podtolerationrestriction/apis/podtolerationrestriction"
...
@@ -83,9 +85,7 @@ func TestPodAdmission(t *testing.T) {
...
@@ -83,9 +85,7 @@ func TestPodAdmission(t *testing.T) {
},
},
}
}
if
err
:=
utilfeature
.
DefaultFeatureGate
.
Set
(
"TaintNodesByCondition=true"
);
err
!=
nil
{
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
TaintNodesByCondition
,
true
)()
t
.
Errorf
(
"Failed to enable TaintByCondition feature: %v."
,
err
)
}
tests
:=
[]
struct
{
tests
:=
[]
struct
{
pod
*
api
.
Pod
pod
*
api
.
Pod
...
...
plugin/pkg/admission/priority/BUILD
View file @
de8bf9b6
...
@@ -21,6 +21,7 @@ go_test(
...
@@ -21,6 +21,7 @@ go_test(
"//staging/src/k8s.io/apiserver/pkg/admission:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/admission:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/authentication/user:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/authentication/user:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/util/feature/testing:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//staging/src/k8s.io/client-go/informers:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
],
],
...
...
plugin/pkg/admission/priority/admission_test.go
View file @
de8bf9b6
...
@@ -17,7 +17,6 @@ limitations under the License.
...
@@ -17,7 +17,6 @@ limitations under the License.
package
priority
package
priority
import
(
import
(
"fmt"
"testing"
"testing"
"k8s.io/klog"
"k8s.io/klog"
...
@@ -27,6 +26,7 @@ import (
...
@@ -27,6 +26,7 @@ import (
"k8s.io/apiserver/pkg/admission"
"k8s.io/apiserver/pkg/admission"
"k8s.io/apiserver/pkg/authentication/user"
"k8s.io/apiserver/pkg/authentication/user"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeature
"k8s.io/apiserver/pkg/util/feature"
utilfeaturetesting
"k8s.io/apiserver/pkg/util/feature/testing"
"k8s.io/client-go/informers"
"k8s.io/client-go/informers"
api
"k8s.io/kubernetes/pkg/apis/core"
api
"k8s.io/kubernetes/pkg/apis/core"
"k8s.io/kubernetes/pkg/apis/scheduling"
"k8s.io/kubernetes/pkg/apis/scheduling"
...
@@ -468,9 +468,9 @@ func TestPodAdmission(t *testing.T) {
...
@@ -468,9 +468,9 @@ func TestPodAdmission(t *testing.T) {
},
},
}
}
// Enable PodPriority feature gate.
// Enable PodPriority feature gate.
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
PodPriority
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
PodPriority
,
true
)(
)
// Enable ExperimentalCriticalPodAnnotation feature gate.
// Enable ExperimentalCriticalPodAnnotation feature gate.
utilfeature
.
DefaultFeatureGate
.
Set
(
fmt
.
Sprintf
(
"%s=true"
,
features
.
ExperimentalCriticalPodAnnotation
)
)
defer
utilfeaturetesting
.
SetFeatureGateDuringTest
(
t
,
utilfeature
.
DefaultFeatureGate
,
features
.
ExperimentalCriticalPodAnnotation
,
true
)(
)
tests
:=
[]
struct
{
tests
:=
[]
struct
{
name
string
name
string
existingClasses
[]
*
scheduling
.
PriorityClass
existingClasses
[]
*
scheduling
.
PriorityClass
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment