fix: use minDisabled, maxDisabled for parameter validation (#7755)

This commit is contained in:
Marcin Tojek
2023-06-02 11:43:48 +02:00
committed by GitHub
parent a7366a8b76
commit 10036ab5fb
16 changed files with 1595 additions and 62 deletions
+15 -13
View File
@@ -78,24 +78,26 @@ func ValidateWorkspaceBuildParameter(richParameter TemplateVersionParameter, bui
return nil
}
var min, max int
if richParameter.ValidationMin != nil {
min = int(*richParameter.ValidationMin)
}
if richParameter.ValidationMax != nil {
max = int(*richParameter.ValidationMax)
}
validation := &provider.Validation{
Min: ptrInt(richParameter.ValidationMin),
Max: ptrInt(richParameter.ValidationMax),
Regex: richParameter.ValidationRegex,
Error: richParameter.ValidationError,
Monotonic: string(richParameter.ValidationMonotonic),
Min: min,
Max: max,
MinDisabled: richParameter.ValidationMin == nil,
MaxDisabled: richParameter.ValidationMax == nil,
Regex: richParameter.ValidationRegex,
Error: richParameter.ValidationError,
Monotonic: string(richParameter.ValidationMonotonic),
}
return validation.Valid(richParameter.Type, value)
}
func ptrInt(number *int32) *int {
if number == nil {
return nil
}
n := int(*number)
return &n
}
func findBuildParameter(params []WorkspaceBuildParameter, parameterName string) (*WorkspaceBuildParameter, bool) {
if params == nil {
return nil, false