mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
Merge pull request #106169 from kerthcet/bug/shape-can-be-empty-in-scoring-stragety
ScoringStrategy RequestedToCapacityRatio's shape should not be empty
This commit is contained in:
commit
d9f06f9e18
@ -306,7 +306,7 @@ func ValidateNodeResourcesFitArgs(path *field.Path, args *config.NodeResourcesFi
|
||||
|
||||
if args.ScoringStrategy != nil {
|
||||
allErrs = append(allErrs, validateResources(args.ScoringStrategy.Resources, path.Child("resources"))...)
|
||||
if args.ScoringStrategy.RequestedToCapacityRatio != nil && len(args.ScoringStrategy.RequestedToCapacityRatio.Shape) > 0 {
|
||||
if args.ScoringStrategy.RequestedToCapacityRatio != nil {
|
||||
allErrs = append(allErrs, validateFunctionShape(args.ScoringStrategy.RequestedToCapacityRatio.Shape, path.Child("shape"))...)
|
||||
}
|
||||
}
|
||||
|
@ -947,14 +947,31 @@ func TestValidateMostAllocatedScoringStrategy(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) {
|
||||
defaultShape := []config.UtilizationShapePoint{
|
||||
{
|
||||
Utilization: 30,
|
||||
Score: 3,
|
||||
},
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
resources []config.ResourceSpec
|
||||
shapes []config.UtilizationShapePoint
|
||||
wantErrs field.ErrorList
|
||||
}{
|
||||
{
|
||||
name: "no shapes",
|
||||
shapes: nil,
|
||||
wantErrs: field.ErrorList{
|
||||
{
|
||||
Type: field.ErrorTypeRequired,
|
||||
Field: "shape",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "weight greater than max",
|
||||
shapes: defaultShape,
|
||||
resources: []config.ResourceSpec{
|
||||
{
|
||||
Name: "cpu",
|
||||
@ -970,6 +987,7 @@ func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "weight less than min",
|
||||
shapes: defaultShape,
|
||||
resources: []config.ResourceSpec{
|
||||
{
|
||||
Name: "cpu",
|
||||
@ -985,12 +1003,7 @@ func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) {
|
||||
},
|
||||
{
|
||||
name: "valid shapes",
|
||||
shapes: []config.UtilizationShapePoint{
|
||||
{
|
||||
Utilization: 30,
|
||||
Score: 3,
|
||||
},
|
||||
},
|
||||
shapes: defaultShape,
|
||||
wantErrs: nil,
|
||||
},
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user