mirror of https://github.com/k3s-io/k3s
Use Scheduling V1 API instead of Scheduling v1beta1
parent
20cece67b5
commit
8574e3e3f4
|
@ -38,6 +38,5 @@ func Install(scheme *runtime.Scheme) {
|
|||
utilruntime.Must(v1.AddToScheme(scheme))
|
||||
utilruntime.Must(v1beta1.AddToScheme(scheme))
|
||||
utilruntime.Must(v1alpha1.AddToScheme(scheme))
|
||||
// TODO(bsalamat): update this in 1.15 to use v1 API.
|
||||
utilruntime.Must(scheme.SetVersionPriority(v1beta1.SchemeGroupVersion, v1.SchemeGroupVersion, v1alpha1.SchemeGroupVersion))
|
||||
utilruntime.Must(scheme.SetVersionPriority(v1.SchemeGroupVersion, v1beta1.SchemeGroupVersion, v1alpha1.SchemeGroupVersion))
|
||||
}
|
||||
|
|
|
@ -45,7 +45,7 @@ import (
|
|||
networkingv1beta1 "k8s.io/api/networking/v1beta1"
|
||||
policyv1beta1 "k8s.io/api/policy/v1beta1"
|
||||
rbacv1 "k8s.io/api/rbac/v1"
|
||||
schedulingv1beta1 "k8s.io/api/scheduling/v1beta1"
|
||||
schedulingv1 "k8s.io/api/scheduling/v1"
|
||||
storagev1 "k8s.io/api/storage/v1"
|
||||
"k8s.io/apimachinery/pkg/api/errors"
|
||||
"k8s.io/apimachinery/pkg/api/meta"
|
||||
|
@ -191,7 +191,7 @@ func describerMap(clientConfig *rest.Config) (map[schema.GroupKind]describe.Desc
|
|||
{Group: rbacv1.GroupName, Kind: "RoleBinding"}: &RoleBindingDescriber{c},
|
||||
{Group: rbacv1.GroupName, Kind: "ClusterRoleBinding"}: &ClusterRoleBindingDescriber{c},
|
||||
{Group: networkingv1.GroupName, Kind: "NetworkPolicy"}: &NetworkPolicyDescriber{c},
|
||||
{Group: schedulingv1beta1.GroupName, Kind: "PriorityClass"}: &PriorityClassDescriber{c},
|
||||
{Group: schedulingv1.GroupName, Kind: "PriorityClass"}: &PriorityClassDescriber{c},
|
||||
}
|
||||
|
||||
return m, nil
|
||||
|
@ -3790,7 +3790,7 @@ type PriorityClassDescriber struct {
|
|||
}
|
||||
|
||||
func (s *PriorityClassDescriber) Describe(namespace, name string, describerSettings describe.DescriberSettings) (string, error) {
|
||||
pc, err := s.SchedulingV1beta1().PriorityClasses().Get(name, metav1.GetOptions{})
|
||||
pc, err := s.SchedulingV1().PriorityClasses().Get(name, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
@ -3803,7 +3803,7 @@ func (s *PriorityClassDescriber) Describe(namespace, name string, describerSetti
|
|||
return describePriorityClass(pc, events)
|
||||
}
|
||||
|
||||
func describePriorityClass(pc *schedulingv1beta1.PriorityClass, events *corev1.EventList) (string, error) {
|
||||
func describePriorityClass(pc *schedulingv1.PriorityClass, events *corev1.EventList) (string, error) {
|
||||
return tabbedString(func(out io.Writer) error {
|
||||
w := NewPrefixWriter(out)
|
||||
w.Write(LEVEL_0, "Name:\t%s\n", pc.Name)
|
||||
|
|
|
@ -19,7 +19,7 @@ package versioned
|
|||
import (
|
||||
"fmt"
|
||||
|
||||
scheduling "k8s.io/api/scheduling/v1beta1"
|
||||
scheduling "k8s.io/api/scheduling/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
"k8s.io/kubernetes/pkg/kubectl/generate"
|
||||
|
|
|
@ -17,7 +17,7 @@ limitations under the License.
|
|||
package versioned
|
||||
|
||||
import (
|
||||
scheduling "k8s.io/api/scheduling/v1beta1"
|
||||
scheduling "k8s.io/api/scheduling/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
"reflect"
|
||||
|
|
|
@ -35,7 +35,7 @@ import (
|
|||
extensionsv1beta1 "k8s.io/api/extensions/v1beta1"
|
||||
policyv1beta1 "k8s.io/api/policy/v1beta1"
|
||||
rbacv1beta1 "k8s.io/api/rbac/v1beta1"
|
||||
schedulingv1beta1 "k8s.io/api/scheduling/v1beta1"
|
||||
schedulingv1 "k8s.io/api/scheduling/v1"
|
||||
storagev1 "k8s.io/api/storage/v1"
|
||||
"k8s.io/apimachinery/pkg/api/meta"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
@ -441,8 +441,8 @@ func AddHandlers(h printers.PrintHandler) {
|
|||
|
||||
priorityClassColumnDefinitions := []metav1beta1.TableColumnDefinition{
|
||||
{Name: "Name", Type: "string", Format: "name", Description: metav1.ObjectMeta{}.SwaggerDoc()["name"]},
|
||||
{Name: "Value", Type: "integer", Description: schedulingv1beta1.PriorityClass{}.SwaggerDoc()["value"]},
|
||||
{Name: "Global-Default", Type: "boolean", Description: schedulingv1beta1.PriorityClass{}.SwaggerDoc()["globalDefault"]},
|
||||
{Name: "Value", Type: "integer", Description: schedulingv1.PriorityClass{}.SwaggerDoc()["value"]},
|
||||
{Name: "Global-Default", Type: "boolean", Description: schedulingv1.PriorityClass{}.SwaggerDoc()["globalDefault"]},
|
||||
{Name: "Age", Type: "string", Description: metav1.ObjectMeta{}.SwaggerDoc()["creationTimestamp"]},
|
||||
}
|
||||
h.TableHandler(priorityClassColumnDefinitions, printPriorityClass)
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ import (
|
|||
extensionsv1beta1 "k8s.io/api/extensions/v1beta1"
|
||||
nodev1alpha1 "k8s.io/api/node/v1alpha1"
|
||||
rbacv1alpha1 "k8s.io/api/rbac/v1alpha1"
|
||||
schedulerapi "k8s.io/api/scheduling/v1beta1"
|
||||
schedulerapi "k8s.io/api/scheduling/v1"
|
||||
settingsv1alpha1 "k8s.io/api/settings/v1alpha1"
|
||||
storagev1alpha1 "k8s.io/api/storage/v1alpha1"
|
||||
"k8s.io/apimachinery/pkg/api/meta"
|
||||
|
|
|
@ -419,7 +419,7 @@ func GetEtcdStorageData() map[schema.GroupVersionResource]StorageData {
|
|||
gvr("scheduling.k8s.io", "v1alpha1", "priorityclasses"): {
|
||||
Stub: `{"metadata":{"name":"pc1"},"Value":1000}`,
|
||||
ExpectedEtcdPath: "/registry/priorityclasses/pc1",
|
||||
ExpectedGVK: gvkP("scheduling.k8s.io", "v1beta1", "PriorityClass"),
|
||||
ExpectedGVK: gvkP("scheduling.k8s.io", "v1", "PriorityClass"),
|
||||
},
|
||||
// --
|
||||
|
||||
|
@ -427,6 +427,7 @@ func GetEtcdStorageData() map[schema.GroupVersionResource]StorageData {
|
|||
gvr("scheduling.k8s.io", "v1beta1", "priorityclasses"): {
|
||||
Stub: `{"metadata":{"name":"pc2"},"Value":1000}`,
|
||||
ExpectedEtcdPath: "/registry/priorityclasses/pc2",
|
||||
ExpectedGVK: gvkP("scheduling.k8s.io", "v1", "PriorityClass"),
|
||||
},
|
||||
// --
|
||||
|
||||
|
@ -434,7 +435,6 @@ func GetEtcdStorageData() map[schema.GroupVersionResource]StorageData {
|
|||
gvr("scheduling.k8s.io", "v1", "priorityclasses"): {
|
||||
Stub: `{"metadata":{"name":"pc3"},"Value":1000}`,
|
||||
ExpectedEtcdPath: "/registry/priorityclasses/pc3",
|
||||
ExpectedGVK: gvkP("scheduling.k8s.io", "v1beta1", "PriorityClass"),
|
||||
},
|
||||
// --
|
||||
|
||||
|
|
Loading…
Reference in New Issue