Skip to content

Commit 9090993

Browse files
authored
Merge pull request #1896 from cemakd/validate
Add validation for negative provisioned-throughput-on-create parameter
2 parents f299c4d + 40c0773 commit 9090993

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

Diff for: pkg/common/parameters.go

+3
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,9 @@ func (pp *ParameterProcessor) ExtractAndDefaultParameters(parameters map[string]
201201
if err != nil {
202202
return p, fmt.Errorf("parameters contain invalid provisionedThroughputOnCreate parameter: %w", err)
203203
}
204+
if paramProvisionedThroughputOnCreate < 0 {
205+
return p, fmt.Errorf("parameter provisionedThroughputOnCreate cannot be negative")
206+
}
204207
p.ProvisionedThroughputOnCreate = paramProvisionedThroughputOnCreate
205208
case ParameterAvailabilityClass:
206209
paramAvailabilityClass, err := ConvertStringToAvailabilityClass(v)

Diff for: pkg/common/parameters_test.go

+7
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,13 @@ func TestExtractAndDefaultParameters(t *testing.T) {
344344
labels: map[string]string{},
345345
expectErr: true,
346346
},
347+
{
348+
name: "invalid storage pool parameters, negative ProvisionedThroughputOnCreate",
349+
enableStoragePools: true,
350+
parameters: map[string]string{ParameterKeyType: "hyperdisk-throughput", ParameterKeyReplicationType: "none", ParameterKeyDiskEncryptionKmsKey: "foo/key", ParameterKeyLabels: "key1=value1,key2=value2", ParameterKeyResourceTags: "parent1/key1/value1,parent2/key2/value2", ParameterKeyProvisionedThroughputOnCreate: "-50Mi"},
351+
labels: map[string]string{},
352+
expectErr: true,
353+
},
347354
{
348355
name: "storage pool parameters, enableStoragePools is false",
349356
enableStoragePools: false,

0 commit comments

Comments
 (0)