mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 12:43:23 +00:00
Move pkg/apis/core/v1.IsScalarResourceName under pkg/scheduler/util
IsScalarResourceName is imported only inside pkg/scheduler packages.
This commit is contained in:
parent
b4258ec138
commit
6822a0ec20
@ -136,12 +136,6 @@ func IsAttachableVolumeResourceName(name v1.ResourceName) bool {
|
|||||||
return strings.HasPrefix(string(name), v1.ResourceAttachableVolumesPrefix)
|
return strings.HasPrefix(string(name), v1.ResourceAttachableVolumesPrefix)
|
||||||
}
|
}
|
||||||
|
|
||||||
// IsScalarResourceName validates the resource for Extended, Hugepages, Native and AttachableVolume resources
|
|
||||||
func IsScalarResourceName(name v1.ResourceName) bool {
|
|
||||||
return IsExtendedResourceName(name) || IsHugePageResourceName(name) ||
|
|
||||||
IsPrefixedNativeResource(name) || IsAttachableVolumeResourceName(name)
|
|
||||||
}
|
|
||||||
|
|
||||||
// IsServiceIPSet aims to check if the service's ClusterIP is set or not
|
// IsServiceIPSet aims to check if the service's ClusterIP is set or not
|
||||||
// the objective is not to perform validation here
|
// the objective is not to perform validation here
|
||||||
func IsServiceIPSet(service *v1.Service) bool {
|
func IsServiceIPSet(service *v1.Service) bool {
|
||||||
|
@ -20,7 +20,6 @@ import (
|
|||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
"k8s.io/klog/v2"
|
"k8s.io/klog/v2"
|
||||||
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
|
||||||
"k8s.io/kubernetes/pkg/features"
|
"k8s.io/kubernetes/pkg/features"
|
||||||
"k8s.io/kubernetes/pkg/scheduler/framework"
|
"k8s.io/kubernetes/pkg/scheduler/framework"
|
||||||
schedutil "k8s.io/kubernetes/pkg/scheduler/util"
|
schedutil "k8s.io/kubernetes/pkg/scheduler/util"
|
||||||
@ -100,7 +99,7 @@ func calculateResourceAllocatableRequest(nodeInfo *framework.NodeInfo, pod *v1.P
|
|||||||
case v1.ResourceEphemeralStorage:
|
case v1.ResourceEphemeralStorage:
|
||||||
return nodeInfo.Allocatable.EphemeralStorage, (nodeInfo.Requested.EphemeralStorage + podRequest)
|
return nodeInfo.Allocatable.EphemeralStorage, (nodeInfo.Requested.EphemeralStorage + podRequest)
|
||||||
default:
|
default:
|
||||||
if v1helper.IsScalarResourceName(resource) {
|
if schedutil.IsScalarResourceName(resource) {
|
||||||
return nodeInfo.Allocatable.ScalarResources[resource], (nodeInfo.Requested.ScalarResources[resource] + podRequest)
|
return nodeInfo.Allocatable.ScalarResources[resource], (nodeInfo.Requested.ScalarResources[resource] + podRequest)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,7 +19,11 @@ package framework
|
|||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"k8s.io/api/core/v1"
|
"sync"
|
||||||
|
"sync/atomic"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
v1 "k8s.io/api/core/v1"
|
||||||
"k8s.io/apimachinery/pkg/api/resource"
|
"k8s.io/apimachinery/pkg/api/resource"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
"k8s.io/apimachinery/pkg/labels"
|
||||||
@ -29,9 +33,6 @@ import (
|
|||||||
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
||||||
"k8s.io/kubernetes/pkg/features"
|
"k8s.io/kubernetes/pkg/features"
|
||||||
schedutil "k8s.io/kubernetes/pkg/scheduler/util"
|
schedutil "k8s.io/kubernetes/pkg/scheduler/util"
|
||||||
"sync"
|
|
||||||
"sync/atomic"
|
|
||||||
"time"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var generation int64
|
var generation int64
|
||||||
@ -317,7 +318,7 @@ func (r *Resource) Add(rl v1.ResourceList) {
|
|||||||
r.EphemeralStorage += rQuant.Value()
|
r.EphemeralStorage += rQuant.Value()
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
if v1helper.IsScalarResourceName(rName) {
|
if schedutil.IsScalarResourceName(rName) {
|
||||||
r.AddScalar(rName, rQuant.Value())
|
r.AddScalar(rName, rQuant.Value())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -394,7 +395,7 @@ func (r *Resource) SetMaxResource(rl v1.ResourceList) {
|
|||||||
r.EphemeralStorage = ephemeralStorage
|
r.EphemeralStorage = ephemeralStorage
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
if v1helper.IsScalarResourceName(rName) {
|
if schedutil.IsScalarResourceName(rName) {
|
||||||
value := rQuantity.Value()
|
value := rQuantity.Value()
|
||||||
if value > r.ScalarResources[rName] {
|
if value > r.ScalarResources[rName] {
|
||||||
r.SetScalar(rName, value)
|
r.SetScalar(rName, value)
|
||||||
|
@ -19,7 +19,6 @@ package util
|
|||||||
import (
|
import (
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
utilfeature "k8s.io/apiserver/pkg/util/feature"
|
||||||
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
|
||||||
"k8s.io/kubernetes/pkg/features"
|
"k8s.io/kubernetes/pkg/features"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -73,7 +72,7 @@ func GetNonzeroRequestForResource(resource v1.ResourceName, requests *v1.Resourc
|
|||||||
}
|
}
|
||||||
return quantity.Value()
|
return quantity.Value()
|
||||||
default:
|
default:
|
||||||
if v1helper.IsScalarResourceName(resource) {
|
if IsScalarResourceName(resource) {
|
||||||
quantity, found := (*requests)[resource]
|
quantity, found := (*requests)[resource]
|
||||||
if !found {
|
if !found {
|
||||||
return 0
|
return 0
|
||||||
|
@ -31,6 +31,7 @@ import (
|
|||||||
corev1helpers "k8s.io/component-helpers/scheduling/corev1"
|
corev1helpers "k8s.io/component-helpers/scheduling/corev1"
|
||||||
"k8s.io/klog/v2"
|
"k8s.io/klog/v2"
|
||||||
extenderv1 "k8s.io/kube-scheduler/extender/v1"
|
extenderv1 "k8s.io/kube-scheduler/extender/v1"
|
||||||
|
v1helper "k8s.io/kubernetes/pkg/apis/core/v1/helper"
|
||||||
)
|
)
|
||||||
|
|
||||||
// GetPodFullName returns a name that uniquely identifies a pod.
|
// GetPodFullName returns a name that uniquely identifies a pod.
|
||||||
@ -163,3 +164,9 @@ func ClearNominatedNodeName(cs kubernetes.Interface, pods ...*v1.Pod) utilerrors
|
|||||||
}
|
}
|
||||||
return utilerrors.NewAggregate(errs)
|
return utilerrors.NewAggregate(errs)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// IsScalarResourceName validates the resource for Extended, Hugepages, Native and AttachableVolume resources
|
||||||
|
func IsScalarResourceName(name v1.ResourceName) bool {
|
||||||
|
return v1helper.IsExtendedResourceName(name) || v1helper.IsHugePageResourceName(name) ||
|
||||||
|
v1helper.IsPrefixedNativeResource(name) || v1helper.IsAttachableVolumeResourceName(name)
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user