mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 03:11:40 +00:00
feat: use scheduler.New in daemonset integration test
This commit is contained in:
parent
aaad86c210
commit
f49c9f5cb6
@ -22,7 +22,8 @@ go_test(
|
|||||||
"//pkg/scheduler:go_default_library",
|
"//pkg/scheduler:go_default_library",
|
||||||
"//pkg/scheduler/algorithmprovider:go_default_library",
|
"//pkg/scheduler/algorithmprovider:go_default_library",
|
||||||
"//pkg/scheduler/api:go_default_library",
|
"//pkg/scheduler/api:go_default_library",
|
||||||
"//pkg/scheduler/factory:go_default_library",
|
"//pkg/scheduler/apis/config:go_default_library",
|
||||||
|
"//pkg/scheduler/framework/v1alpha1:go_default_library",
|
||||||
"//pkg/util/labels:go_default_library",
|
"//pkg/util/labels: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",
|
||||||
|
@ -50,7 +50,8 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/scheduler"
|
"k8s.io/kubernetes/pkg/scheduler"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/algorithmprovider"
|
"k8s.io/kubernetes/pkg/scheduler/algorithmprovider"
|
||||||
schedulerapi "k8s.io/kubernetes/pkg/scheduler/api"
|
schedulerapi "k8s.io/kubernetes/pkg/scheduler/api"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/factory"
|
schedulerconfig "k8s.io/kubernetes/pkg/scheduler/apis/config"
|
||||||
|
schedulerframework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
|
||||||
labelsutil "k8s.io/kubernetes/pkg/util/labels"
|
labelsutil "k8s.io/kubernetes/pkg/util/labels"
|
||||||
"k8s.io/kubernetes/test/integration/framework"
|
"k8s.io/kubernetes/test/integration/framework"
|
||||||
)
|
)
|
||||||
@ -97,54 +98,42 @@ func setupScheduler(
|
|||||||
// Enable Features.
|
// Enable Features.
|
||||||
algorithmprovider.ApplyFeatureGates()
|
algorithmprovider.ApplyFeatureGates()
|
||||||
|
|
||||||
schedulerConfigFactory := factory.NewConfigFactory(&factory.ConfigFactoryArgs{
|
eventBroadcaster := events.NewBroadcaster(&events.EventSinkImpl{
|
||||||
SchedulerName: v1.DefaultSchedulerName,
|
Interface: cs.EventsV1beta1().Events(""),
|
||||||
Client: cs,
|
|
||||||
NodeInformer: informerFactory.Core().V1().Nodes(),
|
|
||||||
PodInformer: informerFactory.Core().V1().Pods(),
|
|
||||||
PvInformer: informerFactory.Core().V1().PersistentVolumes(),
|
|
||||||
PvcInformer: informerFactory.Core().V1().PersistentVolumeClaims(),
|
|
||||||
ReplicationControllerInformer: informerFactory.Core().V1().ReplicationControllers(),
|
|
||||||
ReplicaSetInformer: informerFactory.Apps().V1().ReplicaSets(),
|
|
||||||
StatefulSetInformer: informerFactory.Apps().V1().StatefulSets(),
|
|
||||||
ServiceInformer: informerFactory.Core().V1().Services(),
|
|
||||||
PdbInformer: informerFactory.Policy().V1beta1().PodDisruptionBudgets(),
|
|
||||||
StorageClassInformer: informerFactory.Storage().V1().StorageClasses(),
|
|
||||||
CSINodeInformer: informerFactory.Storage().V1beta1().CSINodes(),
|
|
||||||
HardPodAffinitySymmetricWeight: v1.DefaultHardPodAffinitySymmetricWeight,
|
|
||||||
DisablePreemption: false,
|
|
||||||
PercentageOfNodesToScore: 100,
|
|
||||||
StopCh: stopCh,
|
|
||||||
})
|
})
|
||||||
schedulerConfig, err := schedulerConfigFactory.Create()
|
|
||||||
if err != nil {
|
|
||||||
t.Fatalf("Couldn't create scheduler config: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: Replace NewFromConfig and AddAllEventHandlers with scheduler.New() in
|
defaultProviderName := schedulerconfig.SchedulerDefaultProviderName
|
||||||
// all test/integration tests.
|
|
||||||
sched := scheduler.NewFromConfig(schedulerConfig)
|
sched, err := scheduler.New(
|
||||||
scheduler.AddAllEventHandlers(sched,
|
cs,
|
||||||
v1.DefaultSchedulerName,
|
|
||||||
informerFactory.Core().V1().Nodes(),
|
informerFactory.Core().V1().Nodes(),
|
||||||
informerFactory.Core().V1().Pods(),
|
informerFactory.Core().V1().Pods(),
|
||||||
informerFactory.Core().V1().PersistentVolumes(),
|
informerFactory.Core().V1().PersistentVolumes(),
|
||||||
informerFactory.Core().V1().PersistentVolumeClaims(),
|
informerFactory.Core().V1().PersistentVolumeClaims(),
|
||||||
|
informerFactory.Core().V1().ReplicationControllers(),
|
||||||
|
informerFactory.Apps().V1().ReplicaSets(),
|
||||||
|
informerFactory.Apps().V1().StatefulSets(),
|
||||||
informerFactory.Core().V1().Services(),
|
informerFactory.Core().V1().Services(),
|
||||||
|
informerFactory.Policy().V1beta1().PodDisruptionBudgets(),
|
||||||
informerFactory.Storage().V1().StorageClasses(),
|
informerFactory.Storage().V1().StorageClasses(),
|
||||||
informerFactory.Storage().V1beta1().CSINodes(),
|
informerFactory.Storage().V1beta1().CSINodes(),
|
||||||
)
|
eventBroadcaster.NewRecorder(
|
||||||
|
|
||||||
eventBroadcaster := events.NewBroadcaster(&events.EventSinkImpl{
|
|
||||||
Interface: cs.EventsV1beta1().Events(""),
|
|
||||||
})
|
|
||||||
schedulerConfig.Recorder = eventBroadcaster.NewRecorder(
|
|
||||||
legacyscheme.Scheme,
|
legacyscheme.Scheme,
|
||||||
v1.DefaultSchedulerName,
|
v1.DefaultSchedulerName,
|
||||||
|
),
|
||||||
|
schedulerconfig.SchedulerAlgorithmSource{
|
||||||
|
Provider: &defaultProviderName,
|
||||||
|
},
|
||||||
|
stopCh,
|
||||||
|
schedulerframework.NewRegistry(),
|
||||||
|
nil,
|
||||||
|
[]schedulerconfig.PluginConfig{},
|
||||||
)
|
)
|
||||||
eventBroadcaster.StartRecordingToSink(stopCh)
|
if err != nil {
|
||||||
|
t.Fatalf("Couldn't create scheduler: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
algorithmprovider.ApplyFeatureGates()
|
eventBroadcaster.StartRecordingToSink(stopCh)
|
||||||
|
|
||||||
go sched.Run()
|
go sched.Run()
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user