mirror of https://github.com/k3s-io/k3s
Merge pull request #69318 from wgliang/feature/move-fakecache
[scheduler cleanup phase 1]: Move FakeCache to pkg/scheduler/internal…pull/58/head
commit
d3fe0ea7ff
|
@ -44,6 +44,7 @@ go_test(
|
||||||
"//pkg/scheduler/api:go_default_library",
|
"//pkg/scheduler/api:go_default_library",
|
||||||
"//pkg/scheduler/core:go_default_library",
|
"//pkg/scheduler/core:go_default_library",
|
||||||
"//pkg/scheduler/internal/cache:go_default_library",
|
"//pkg/scheduler/internal/cache:go_default_library",
|
||||||
|
"//pkg/scheduler/internal/cache/fake:go_default_library",
|
||||||
"//pkg/scheduler/testing:go_default_library",
|
"//pkg/scheduler/testing:go_default_library",
|
||||||
"//pkg/scheduler/volumebinder:go_default_library",
|
"//pkg/scheduler/volumebinder:go_default_library",
|
||||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
|
|
|
@ -70,6 +70,7 @@ go_test(
|
||||||
"//pkg/scheduler/api:go_default_library",
|
"//pkg/scheduler/api:go_default_library",
|
||||||
"//pkg/scheduler/api/latest:go_default_library",
|
"//pkg/scheduler/api/latest:go_default_library",
|
||||||
"//pkg/scheduler/cache:go_default_library",
|
"//pkg/scheduler/cache:go_default_library",
|
||||||
|
"//pkg/scheduler/internal/cache/fake:go_default_library",
|
||||||
"//pkg/scheduler/internal/queue:go_default_library",
|
"//pkg/scheduler/internal/queue:go_default_library",
|
||||||
"//pkg/scheduler/testing:go_default_library",
|
"//pkg/scheduler/testing:go_default_library",
|
||||||
"//pkg/scheduler/util:go_default_library",
|
"//pkg/scheduler/util:go_default_library",
|
||||||
|
|
|
@ -41,6 +41,7 @@ import (
|
||||||
schedulerapi "k8s.io/kubernetes/pkg/scheduler/api"
|
schedulerapi "k8s.io/kubernetes/pkg/scheduler/api"
|
||||||
latestschedulerapi "k8s.io/kubernetes/pkg/scheduler/api/latest"
|
latestschedulerapi "k8s.io/kubernetes/pkg/scheduler/api/latest"
|
||||||
schedulercache "k8s.io/kubernetes/pkg/scheduler/cache"
|
schedulercache "k8s.io/kubernetes/pkg/scheduler/cache"
|
||||||
|
fakecache "k8s.io/kubernetes/pkg/scheduler/internal/cache/fake"
|
||||||
internalqueue "k8s.io/kubernetes/pkg/scheduler/internal/queue"
|
internalqueue "k8s.io/kubernetes/pkg/scheduler/internal/queue"
|
||||||
schedulertesting "k8s.io/kubernetes/pkg/scheduler/testing"
|
schedulertesting "k8s.io/kubernetes/pkg/scheduler/testing"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/util"
|
"k8s.io/kubernetes/pkg/scheduler/util"
|
||||||
|
@ -526,7 +527,7 @@ func TestSkipPodUpdate(t *testing.T) {
|
||||||
for _, test := range table {
|
for _, test := range table {
|
||||||
t.Run(test.name, func(t *testing.T) {
|
t.Run(test.name, func(t *testing.T) {
|
||||||
c := &configFactory{
|
c := &configFactory{
|
||||||
schedulerCache: &schedulertesting.FakeCache{
|
schedulerCache: &fakecache.Cache{
|
||||||
IsAssumedPodFunc: test.isAssumedPodFunc,
|
IsAssumedPodFunc: test.isAssumedPodFunc,
|
||||||
GetPodFunc: test.getPodFunc,
|
GetPodFunc: test.getPodFunc,
|
||||||
},
|
},
|
||||||
|
|
|
@ -53,7 +53,10 @@ filegroup(
|
||||||
|
|
||||||
filegroup(
|
filegroup(
|
||||||
name = "all-srcs",
|
name = "all-srcs",
|
||||||
srcs = [":package-srcs"],
|
srcs = [
|
||||||
|
":package-srcs",
|
||||||
|
"//pkg/scheduler/internal/cache/fake:all-srcs",
|
||||||
|
],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
visibility = ["//visibility:public"],
|
visibility = ["//visibility:public"],
|
||||||
)
|
)
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||||
|
|
||||||
|
go_library(
|
||||||
|
name = "go_default_library",
|
||||||
|
srcs = ["fake_cache.go"],
|
||||||
|
importpath = "k8s.io/kubernetes/pkg/scheduler/internal/cache/fake",
|
||||||
|
visibility = ["//pkg/scheduler:__subpackages__"],
|
||||||
|
deps = [
|
||||||
|
"//pkg/scheduler/cache:go_default_library",
|
||||||
|
"//pkg/scheduler/internal/cache:go_default_library",
|
||||||
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/labels:go_default_library",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "package-srcs",
|
||||||
|
srcs = glob(["**"]),
|
||||||
|
tags = ["automanaged"],
|
||||||
|
visibility = ["//visibility:private"],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "all-srcs",
|
||||||
|
srcs = [":package-srcs"],
|
||||||
|
tags = ["automanaged"],
|
||||||
|
visibility = ["//visibility:public"],
|
||||||
|
)
|
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package testing
|
package fake
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
|
@ -23,8 +23,8 @@ import (
|
||||||
schedulerinternalcache "k8s.io/kubernetes/pkg/scheduler/internal/cache"
|
schedulerinternalcache "k8s.io/kubernetes/pkg/scheduler/internal/cache"
|
||||||
)
|
)
|
||||||
|
|
||||||
// FakeCache is used for testing
|
// Cache is used for testing
|
||||||
type FakeCache struct {
|
type Cache struct {
|
||||||
AssumeFunc func(*v1.Pod)
|
AssumeFunc func(*v1.Pod)
|
||||||
ForgetFunc func(*v1.Pod)
|
ForgetFunc func(*v1.Pod)
|
||||||
IsAssumedPodFunc func(*v1.Pod) bool
|
IsAssumedPodFunc func(*v1.Pod) bool
|
||||||
|
@ -32,65 +32,65 @@ type FakeCache struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
// AssumePod is a fake method for testing.
|
// AssumePod is a fake method for testing.
|
||||||
func (f *FakeCache) AssumePod(pod *v1.Pod) error {
|
func (c *Cache) AssumePod(pod *v1.Pod) error {
|
||||||
f.AssumeFunc(pod)
|
c.AssumeFunc(pod)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// FinishBinding is a fake method for testing.
|
// FinishBinding is a fake method for testing.
|
||||||
func (f *FakeCache) FinishBinding(pod *v1.Pod) error { return nil }
|
func (c *Cache) FinishBinding(pod *v1.Pod) error { return nil }
|
||||||
|
|
||||||
// ForgetPod is a fake method for testing.
|
// ForgetPod is a fake method for testing.
|
||||||
func (f *FakeCache) ForgetPod(pod *v1.Pod) error {
|
func (c *Cache) ForgetPod(pod *v1.Pod) error {
|
||||||
f.ForgetFunc(pod)
|
c.ForgetFunc(pod)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// AddPod is a fake method for testing.
|
// AddPod is a fake method for testing.
|
||||||
func (f *FakeCache) AddPod(pod *v1.Pod) error { return nil }
|
func (c *Cache) AddPod(pod *v1.Pod) error { return nil }
|
||||||
|
|
||||||
// UpdatePod is a fake method for testing.
|
// UpdatePod is a fake method for testing.
|
||||||
func (f *FakeCache) UpdatePod(oldPod, newPod *v1.Pod) error { return nil }
|
func (c *Cache) UpdatePod(oldPod, newPod *v1.Pod) error { return nil }
|
||||||
|
|
||||||
// RemovePod is a fake method for testing.
|
// RemovePod is a fake method for testing.
|
||||||
func (f *FakeCache) RemovePod(pod *v1.Pod) error { return nil }
|
func (c *Cache) RemovePod(pod *v1.Pod) error { return nil }
|
||||||
|
|
||||||
// IsAssumedPod is a fake method for testing.
|
// IsAssumedPod is a fake method for testing.
|
||||||
func (f *FakeCache) IsAssumedPod(pod *v1.Pod) (bool, error) {
|
func (c *Cache) IsAssumedPod(pod *v1.Pod) (bool, error) {
|
||||||
return f.IsAssumedPodFunc(pod), nil
|
return c.IsAssumedPodFunc(pod), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetPod is a fake method for testing.
|
// GetPod is a fake method for testing.
|
||||||
func (f *FakeCache) GetPod(pod *v1.Pod) (*v1.Pod, error) {
|
func (c *Cache) GetPod(pod *v1.Pod) (*v1.Pod, error) {
|
||||||
return f.GetPodFunc(pod), nil
|
return c.GetPodFunc(pod), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// AddNode is a fake method for testing.
|
// AddNode is a fake method for testing.
|
||||||
func (f *FakeCache) AddNode(node *v1.Node) error { return nil }
|
func (c *Cache) AddNode(node *v1.Node) error { return nil }
|
||||||
|
|
||||||
// UpdateNode is a fake method for testing.
|
// UpdateNode is a fake method for testing.
|
||||||
func (f *FakeCache) UpdateNode(oldNode, newNode *v1.Node) error { return nil }
|
func (c *Cache) UpdateNode(oldNode, newNode *v1.Node) error { return nil }
|
||||||
|
|
||||||
// RemoveNode is a fake method for testing.
|
// RemoveNode is a fake method for testing.
|
||||||
func (f *FakeCache) RemoveNode(node *v1.Node) error { return nil }
|
func (c *Cache) RemoveNode(node *v1.Node) error { return nil }
|
||||||
|
|
||||||
// UpdateNodeNameToInfoMap is a fake method for testing.
|
// UpdateNodeNameToInfoMap is a fake method for testing.
|
||||||
func (f *FakeCache) UpdateNodeNameToInfoMap(infoMap map[string]*schedulercache.NodeInfo) error {
|
func (c *Cache) UpdateNodeNameToInfoMap(infoMap map[string]*schedulercache.NodeInfo) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// List is a fake method for testing.
|
// List is a fake method for testing.
|
||||||
func (f *FakeCache) List(s labels.Selector) ([]*v1.Pod, error) { return nil, nil }
|
func (c *Cache) List(s labels.Selector) ([]*v1.Pod, error) { return nil, nil }
|
||||||
|
|
||||||
// FilteredList is a fake method for testing.
|
// FilteredList is a fake method for testing.
|
||||||
func (f *FakeCache) FilteredList(filter schedulerinternalcache.PodFilter, selector labels.Selector) ([]*v1.Pod, error) {
|
func (c *Cache) FilteredList(filter schedulerinternalcache.PodFilter, selector labels.Selector) ([]*v1.Pod, error) {
|
||||||
return nil, nil
|
return nil, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Snapshot is a fake method for testing
|
// Snapshot is a fake method for testing
|
||||||
func (f *FakeCache) Snapshot() *schedulerinternalcache.Snapshot {
|
func (c *Cache) Snapshot() *schedulerinternalcache.Snapshot {
|
||||||
return &schedulerinternalcache.Snapshot{}
|
return &schedulerinternalcache.Snapshot{}
|
||||||
}
|
}
|
||||||
|
|
||||||
// NodeTree is a fake method for testing.
|
// NodeTree is a fake method for testing.
|
||||||
func (f *FakeCache) NodeTree() *schedulerinternalcache.NodeTree { return nil }
|
func (c *Cache) NodeTree() *schedulerinternalcache.NodeTree { return nil }
|
|
@ -40,6 +40,7 @@ import (
|
||||||
"k8s.io/kubernetes/pkg/scheduler/api"
|
"k8s.io/kubernetes/pkg/scheduler/api"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/core"
|
"k8s.io/kubernetes/pkg/scheduler/core"
|
||||||
schedulerinternalcache "k8s.io/kubernetes/pkg/scheduler/internal/cache"
|
schedulerinternalcache "k8s.io/kubernetes/pkg/scheduler/internal/cache"
|
||||||
|
fakecache "k8s.io/kubernetes/pkg/scheduler/internal/cache/fake"
|
||||||
schedulertesting "k8s.io/kubernetes/pkg/scheduler/testing"
|
schedulertesting "k8s.io/kubernetes/pkg/scheduler/testing"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/volumebinder"
|
"k8s.io/kubernetes/pkg/scheduler/volumebinder"
|
||||||
)
|
)
|
||||||
|
@ -200,7 +201,7 @@ func TestScheduler(t *testing.T) {
|
||||||
var gotBinding *v1.Binding
|
var gotBinding *v1.Binding
|
||||||
configurator := &FakeConfigurator{
|
configurator := &FakeConfigurator{
|
||||||
Config: &Config{
|
Config: &Config{
|
||||||
SchedulerCache: &schedulertesting.FakeCache{
|
SchedulerCache: &fakecache.Cache{
|
||||||
ForgetFunc: func(pod *v1.Pod) {
|
ForgetFunc: func(pod *v1.Pod) {
|
||||||
gotForgetPod = pod
|
gotForgetPod = pod
|
||||||
},
|
},
|
||||||
|
|
|
@ -9,7 +9,6 @@ load(
|
||||||
go_library(
|
go_library(
|
||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
srcs = [
|
srcs = [
|
||||||
"fake_cache.go",
|
|
||||||
"fake_lister.go",
|
"fake_lister.go",
|
||||||
"util.go",
|
"util.go",
|
||||||
],
|
],
|
||||||
|
@ -19,7 +18,6 @@ go_library(
|
||||||
"//pkg/apis/core:go_default_library",
|
"//pkg/apis/core:go_default_library",
|
||||||
"//pkg/apis/core/install:go_default_library",
|
"//pkg/apis/core/install:go_default_library",
|
||||||
"//pkg/scheduler/algorithm:go_default_library",
|
"//pkg/scheduler/algorithm:go_default_library",
|
||||||
"//pkg/scheduler/cache:go_default_library",
|
|
||||||
"//pkg/scheduler/internal/cache:go_default_library",
|
"//pkg/scheduler/internal/cache:go_default_library",
|
||||||
"//staging/src/k8s.io/api/apps/v1:go_default_library",
|
"//staging/src/k8s.io/api/apps/v1:go_default_library",
|
||||||
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
|
|
Loading…
Reference in New Issue