mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
Merge pull request #85590 from yuzhiquan/master
handle registry merge error
This commit is contained in:
commit
f4caa62593
@ -303,7 +303,9 @@ func New(client clientset.Interface,
|
|||||||
VolumeBinder: volumeBinder,
|
VolumeBinder: volumeBinder,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
registry.Merge(options.frameworkOutOfTreeRegistry)
|
if err := registry.Merge(options.frameworkOutOfTreeRegistry); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
snapshot := nodeinfosnapshot.NewEmptySnapshot()
|
snapshot := nodeinfosnapshot.NewEmptySnapshot()
|
||||||
|
|
||||||
|
@ -48,6 +48,7 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/scheduler/algorithm/priorities"
|
"k8s.io/kubernetes/pkg/scheduler/algorithm/priorities"
|
||||||
schedulerapi "k8s.io/kubernetes/pkg/scheduler/apis/config"
|
schedulerapi "k8s.io/kubernetes/pkg/scheduler/apis/config"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/core"
|
"k8s.io/kubernetes/pkg/scheduler/core"
|
||||||
|
frameworkplugins "k8s.io/kubernetes/pkg/scheduler/framework/plugins"
|
||||||
framework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
|
framework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
|
||||||
internalcache "k8s.io/kubernetes/pkg/scheduler/internal/cache"
|
internalcache "k8s.io/kubernetes/pkg/scheduler/internal/cache"
|
||||||
fakecache "k8s.io/kubernetes/pkg/scheduler/internal/cache/fake"
|
fakecache "k8s.io/kubernetes/pkg/scheduler/internal/cache/fake"
|
||||||
@ -202,6 +203,32 @@ func TestSchedulerCreation(t *testing.T) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("Failed to create scheduler: %v", err)
|
t.Fatalf("Failed to create scheduler: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Test case for when a plugin name in frameworkOutOfTreeRegistry already exist in defaultRegistry.
|
||||||
|
fakeFrameworkPluginName := ""
|
||||||
|
for name := range frameworkplugins.NewDefaultRegistry(&frameworkplugins.RegistryArgs{}) {
|
||||||
|
fakeFrameworkPluginName = name
|
||||||
|
break
|
||||||
|
}
|
||||||
|
registryFake := map[string]framework.PluginFactory{
|
||||||
|
fakeFrameworkPluginName: func(_ *runtime.Unknown, fh framework.FrameworkHandle) (framework.Plugin, error) {
|
||||||
|
return nil, nil
|
||||||
|
},
|
||||||
|
}
|
||||||
|
_, err = New(client,
|
||||||
|
informerFactory,
|
||||||
|
NewPodInformer(client, 0),
|
||||||
|
eventBroadcaster.NewRecorder(scheme.Scheme, "scheduler"),
|
||||||
|
stopCh,
|
||||||
|
WithAlgorithmSource(schedulerapi.SchedulerAlgorithmSource{Provider: &testSource}),
|
||||||
|
WithPodInitialBackoffSeconds(1),
|
||||||
|
WithPodMaxBackoffSeconds(10),
|
||||||
|
WithFrameworkOutOfTreeRegistry(registryFake),
|
||||||
|
)
|
||||||
|
|
||||||
|
if err == nil {
|
||||||
|
t.Fatalf("Create scheduler should fail")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestScheduler(t *testing.T) {
|
func TestScheduler(t *testing.T) {
|
||||||
|
Loading…
Reference in New Issue
Block a user