Merge pull request #128746 from liggitt/storedversions-message

Improve validation for missing storedVersion
This commit is contained in:
Kubernetes Prow Robot 2024-12-12 02:57:56 +00:00 committed by GitHub
commit 0d888906b9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 2 deletions

View File

@ -28,6 +28,7 @@ import (
"unicode/utf8"
celgo "github.com/google/cel-go/cel"
"k8s.io/apiextensions-apiserver/pkg/apihelpers"
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
@ -274,7 +275,7 @@ func ValidateCustomResourceDefinitionStoredVersions(storedVersions []string, ver
}
for v, i := range storedVersionsMap {
allErrs = append(allErrs, field.Invalid(fldPath.Index(i), v, "must appear in spec.versions"))
allErrs = append(allErrs, field.Invalid(fldPath.Index(i), v, fmt.Sprintf("missing from spec.versions; %[1]s was previously a storage version, and must remain in spec.versions until a storage migration ensures no data remains persisted in %[1]s and removes %[1]s from status.storedVersions", v)))
}
return allErrs

View File

@ -11002,7 +11002,7 @@ func TestValidateCustomResourceDefinitionStoredVersions(t *testing.T) {
storageVersion: "v1",
storedVersions: []string{"v1alpha", "v1beta1", "v1"},
errors: []validationMatch{
invalidIndex(0, "status", "storedVersions").contains("Invalid value: \"v1alpha\": must appear in spec.versions"),
invalidIndex(0, "status", "storedVersions").contains("Invalid value: \"v1alpha\": missing from spec.versions"),
},
},
{