Use Scheduling V1 API instead of Scheduling v1beta1

This commit is contained in:
Bobby (Babak) Salamat
2019-01-30 14:42:46 -08:00
parent 20cece67b5
commit 8574e3e3f4
9 changed files with 24 additions and 25 deletions

View File

@@ -20,7 +20,7 @@ import (
"fmt"
"io"
schedulingv1beta1 "k8s.io/api/scheduling/v1beta1"
schedulingv1 "k8s.io/api/scheduling/v1"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
@@ -29,7 +29,7 @@ import (
utilfeature "k8s.io/apiserver/pkg/util/feature"
"k8s.io/client-go/informers"
"k8s.io/client-go/kubernetes"
schedulingv1beta1listers "k8s.io/client-go/listers/scheduling/v1beta1"
schedulingv1listers "k8s.io/client-go/listers/scheduling/v1"
api "k8s.io/kubernetes/pkg/apis/core"
"k8s.io/kubernetes/pkg/apis/scheduling"
"k8s.io/kubernetes/pkg/features"
@@ -52,7 +52,7 @@ func Register(plugins *admission.Plugins) {
type priorityPlugin struct {
*admission.Handler
client kubernetes.Interface
lister schedulingv1beta1listers.PriorityClassLister
lister schedulingv1listers.PriorityClassLister
}
var _ admission.MutationInterface = &priorityPlugin{}
@@ -85,7 +85,7 @@ func (p *priorityPlugin) SetExternalKubeClientSet(client kubernetes.Interface) {
// SetInternalKubeInformerFactory implements the WantsInternalKubeInformerFactory interface.
func (p *priorityPlugin) SetExternalKubeInformerFactory(f informers.SharedInformerFactory) {
priorityInformer := f.Scheduling().V1beta1().PriorityClasses()
priorityInformer := f.Scheduling().V1().PriorityClasses()
p.lister = priorityInformer.Lister()
p.SetReadyFunc(priorityInformer.Informer().HasSynced)
}
@@ -244,14 +244,14 @@ func (p *priorityPlugin) validatePriorityClass(a admission.Attributes) error {
return nil
}
func (p *priorityPlugin) getDefaultPriorityClass() (*schedulingv1beta1.PriorityClass, error) {
func (p *priorityPlugin) getDefaultPriorityClass() (*schedulingv1.PriorityClass, error) {
list, err := p.lister.List(labels.Everything())
if err != nil {
return nil, err
}
// In case more than one global default priority class is added as a result of a race condition,
// we pick the one with the lowest priority value.
var defaultPC *schedulingv1beta1.PriorityClass
var defaultPC *schedulingv1.PriorityClass
for _, pci := range list {
if pci.GlobalDefault {
if defaultPC == nil || defaultPC.Value > pci.Value {

View File

@@ -21,7 +21,7 @@ import (
"k8s.io/klog"
schedulingv1beta1 "k8s.io/api/scheduling/v1beta1"
schedulingv1 "k8s.io/api/scheduling/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apiserver/pkg/admission"
"k8s.io/apiserver/pkg/authentication/user"
@@ -30,7 +30,7 @@ import (
"k8s.io/client-go/informers"
api "k8s.io/kubernetes/pkg/apis/core"
"k8s.io/kubernetes/pkg/apis/scheduling"
"k8s.io/kubernetes/pkg/apis/scheduling/v1beta1"
"k8s.io/kubernetes/pkg/apis/scheduling/v1"
"k8s.io/kubernetes/pkg/controller"
"k8s.io/kubernetes/pkg/features"
)
@@ -40,11 +40,11 @@ func addPriorityClasses(ctrl *priorityPlugin, priorityClasses []*scheduling.Prio
ctrl.SetExternalKubeInformerFactory(informerFactory)
// First add the existing classes to the cache.
for _, c := range priorityClasses {
s := &schedulingv1beta1.PriorityClass{}
if err := v1beta1.Convert_scheduling_PriorityClass_To_v1beta1_PriorityClass(c, s, nil); err != nil {
s := &schedulingv1.PriorityClass{}
if err := v1.Convert_scheduling_PriorityClass_To_v1_PriorityClass(c, s, nil); err != nil {
return err
}
informerFactory.Scheduling().V1beta1().PriorityClasses().Informer().GetStore().Add(s)
informerFactory.Scheduling().V1().PriorityClasses().Informer().GetStore().Add(s)
}
return nil
}