diff --git a/pkg/api/rest/create.go b/pkg/api/rest/create.go index 7d99ee84ddd..4519032d366 100644 --- a/pkg/api/rest/create.go +++ b/pkg/api/rest/create.go @@ -21,6 +21,7 @@ import ( "k8s.io/kubernetes/pkg/api/errors" "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/api/validation" + path "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/runtime" "k8s.io/kubernetes/pkg/util/validation/field" ) @@ -81,7 +82,7 @@ func BeforeCreate(strategy RESTCreateStrategy, ctx api.Context, obj runtime.Obje // Custom validation (including name validation) passed // Now run common validation on object meta // Do this *after* custom validation so that specific error messages are shown whenever possible - if errs := validation.ValidateObjectMeta(objectMeta, strategy.NamespaceScoped(), validation.ValidatePathSegmentName, field.NewPath("metadata")); len(errs) > 0 { + if errs := validation.ValidateObjectMeta(objectMeta, strategy.NamespaceScoped(), path.ValidatePathSegmentName, field.NewPath("metadata")); len(errs) > 0 { return errors.NewInvalid(kind.GroupKind(), objectMeta.Name, errs) } diff --git a/pkg/api/rest/resttest/resttest.go b/pkg/api/rest/resttest/resttest.go index eac563bd876..fe8ab7ad870 100644 --- a/pkg/api/rest/resttest/resttest.go +++ b/pkg/api/rest/resttest/resttest.go @@ -27,7 +27,7 @@ import ( "k8s.io/kubernetes/pkg/api/errors" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/api/unversioned" - "k8s.io/kubernetes/pkg/api/validation" + "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/conversion" "k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/labels" @@ -366,7 +366,7 @@ func (t *Tester) testCreateIgnoresMismatchedNamespace(valid runtime.Object) { } func (t *Tester) testCreateValidatesNames(valid runtime.Object) { - for _, invalidName := range validation.NameMayNotBe { + for _, invalidName := range path.NameMayNotBe { objCopy := copyOrDie(valid) objCopyMeta := t.getObjectMetaOrFail(objCopy) objCopyMeta.Name = invalidName @@ -378,7 +378,7 @@ func (t *Tester) testCreateValidatesNames(valid runtime.Object) { } } - for _, invalidSuffix := range validation.NameMayNotContain { + for _, invalidSuffix := range path.NameMayNotContain { objCopy := copyOrDie(valid) objCopyMeta := t.getObjectMetaOrFail(objCopy) objCopyMeta.Name += invalidSuffix diff --git a/pkg/api/validation/name.go b/pkg/api/validation/path/name.go similarity index 99% rename from pkg/api/validation/name.go rename to pkg/api/validation/path/name.go index 1358e6e7e9b..981d9bb465c 100644 --- a/pkg/api/validation/name.go +++ b/pkg/api/validation/path/name.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package validation +package path import ( "fmt" diff --git a/pkg/api/validation/name_test.go b/pkg/api/validation/path/name_test.go similarity index 99% rename from pkg/api/validation/name_test.go rename to pkg/api/validation/path/name_test.go index fb97e8a0977..779412f823c 100644 --- a/pkg/api/validation/name_test.go +++ b/pkg/api/validation/path/name_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package validation +package path import ( "strings" diff --git a/pkg/apis/autoscaling/validation/validation.go b/pkg/apis/autoscaling/validation/validation.go index d7e0e17decf..5689f7185d0 100644 --- a/pkg/apis/autoscaling/validation/validation.go +++ b/pkg/apis/autoscaling/validation/validation.go @@ -20,6 +20,7 @@ import ( "encoding/json" apivalidation "k8s.io/kubernetes/pkg/api/validation" + pathvalidation "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/apis/autoscaling" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/controller/podautoscaler" @@ -66,7 +67,7 @@ func ValidateCrossVersionObjectReference(ref autoscaling.CrossVersionObjectRefer if len(ref.Kind) == 0 { allErrs = append(allErrs, field.Required(fldPath.Child("kind"), "")) } else { - for _, msg := range apivalidation.IsValidPathSegmentName(ref.Kind) { + for _, msg := range pathvalidation.IsValidPathSegmentName(ref.Kind) { allErrs = append(allErrs, field.Invalid(fldPath.Child("kind"), ref.Kind, msg)) } } @@ -74,7 +75,7 @@ func ValidateCrossVersionObjectReference(ref autoscaling.CrossVersionObjectRefer if len(ref.Name) == 0 { allErrs = append(allErrs, field.Required(fldPath.Child("name"), "")) } else { - for _, msg := range apivalidation.IsValidPathSegmentName(ref.Name) { + for _, msg := range pathvalidation.IsValidPathSegmentName(ref.Name) { allErrs = append(allErrs, field.Invalid(fldPath.Child("name"), ref.Name, msg)) } } diff --git a/pkg/apis/rbac/validation/validation.go b/pkg/apis/rbac/validation/validation.go index f4df4dbe4e2..fa732092a61 100644 --- a/pkg/apis/rbac/validation/validation.go +++ b/pkg/apis/rbac/validation/validation.go @@ -18,6 +18,7 @@ package validation import ( "k8s.io/kubernetes/pkg/api/validation" + "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/apis/rbac" "k8s.io/kubernetes/pkg/util/validation/field" ) @@ -26,7 +27,7 @@ import ( // * https://github.com/kubernetes/kubernetes/blob/60db50/pkg/api/validation/name.go // * https://github.com/openshift/origin/blob/388478/pkg/api/helpers.go func minimalNameRequirements(name string, prefix bool) []string { - return validation.IsValidPathSegmentName(name) + return path.IsValidPathSegmentName(name) } func ValidateRole(policy *rbac.Role) field.ErrorList { diff --git a/pkg/client/restclient/request.go b/pkg/client/restclient/request.go index b57f5558e42..3013560091e 100644 --- a/pkg/client/restclient/request.go +++ b/pkg/client/restclient/request.go @@ -35,7 +35,7 @@ import ( "k8s.io/kubernetes/pkg/api/errors" "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/api/v1" - "k8s.io/kubernetes/pkg/api/validation" + pathvalidation "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/client/metrics" "k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/labels" @@ -179,7 +179,7 @@ func (r *Request) Resource(resource string) *Request { r.err = fmt.Errorf("resource already set to %q, cannot change to %q", r.resource, resource) return r } - if msgs := validation.IsValidPathSegmentName(resource); len(msgs) != 0 { + if msgs := pathvalidation.IsValidPathSegmentName(resource); len(msgs) != 0 { r.err = fmt.Errorf("invalid resource %q: %v", resource, msgs) return r } @@ -199,7 +199,7 @@ func (r *Request) SubResource(subresources ...string) *Request { return r } for _, s := range subresources { - if msgs := validation.IsValidPathSegmentName(s); len(msgs) != 0 { + if msgs := pathvalidation.IsValidPathSegmentName(s); len(msgs) != 0 { r.err = fmt.Errorf("invalid subresource %q: %v", s, msgs) return r } @@ -221,7 +221,7 @@ func (r *Request) Name(resourceName string) *Request { r.err = fmt.Errorf("resource name already set to %q, cannot change to %q", r.resourceName, resourceName) return r } - if msgs := validation.IsValidPathSegmentName(resourceName); len(msgs) != 0 { + if msgs := pathvalidation.IsValidPathSegmentName(resourceName); len(msgs) != 0 { r.err = fmt.Errorf("invalid resource name %q: %v", resourceName, msgs) return r } @@ -238,7 +238,7 @@ func (r *Request) Namespace(namespace string) *Request { r.err = fmt.Errorf("namespace already set to %q, cannot change to %q", r.namespace, namespace) return r } - if msgs := validation.IsValidPathSegmentName(namespace); len(msgs) != 0 { + if msgs := pathvalidation.IsValidPathSegmentName(namespace); len(msgs) != 0 { r.err = fmt.Errorf("invalid namespace %q: %v", namespace, msgs) return r } diff --git a/pkg/registry/generic/registry/store.go b/pkg/registry/generic/registry/store.go index 4235848c4c2..8f6034b14dd 100644 --- a/pkg/registry/generic/registry/store.go +++ b/pkg/registry/generic/registry/store.go @@ -29,7 +29,7 @@ import ( "k8s.io/kubernetes/pkg/api/meta" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/api/unversioned" - "k8s.io/kubernetes/pkg/api/validation" + "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/labels" "k8s.io/kubernetes/pkg/registry/generic" @@ -145,7 +145,7 @@ func NamespaceKeyFunc(ctx api.Context, prefix string, name string) (string, erro if len(name) == 0 { return "", kubeerr.NewBadRequest("Name parameter required.") } - if msgs := validation.IsValidPathSegmentName(name); len(msgs) != 0 { + if msgs := path.IsValidPathSegmentName(name); len(msgs) != 0 { return "", kubeerr.NewBadRequest(fmt.Sprintf("Name parameter invalid: %q: %s", name, strings.Join(msgs, ";"))) } key = key + "/" + name @@ -157,7 +157,7 @@ func NoNamespaceKeyFunc(ctx api.Context, prefix string, name string) (string, er if len(name) == 0 { return "", kubeerr.NewBadRequest("Name parameter required.") } - if msgs := validation.IsValidPathSegmentName(name); len(msgs) != 0 { + if msgs := path.IsValidPathSegmentName(name); len(msgs) != 0 { return "", kubeerr.NewBadRequest(fmt.Sprintf("Name parameter invalid: %q: %s", name, strings.Join(msgs, ";"))) } key := prefix + "/" + name diff --git a/pkg/storage/util.go b/pkg/storage/util.go index 571e104d936..1cceced6200 100644 --- a/pkg/storage/util.go +++ b/pkg/storage/util.go @@ -22,7 +22,7 @@ import ( "strings" "k8s.io/kubernetes/pkg/api/meta" - "k8s.io/kubernetes/pkg/api/validation" + "k8s.io/kubernetes/pkg/api/validation/path" "k8s.io/kubernetes/pkg/runtime" "k8s.io/kubernetes/pkg/util/validation/field" ) @@ -107,7 +107,7 @@ func NamespaceKeyFunc(prefix string, obj runtime.Object) (string, error) { return "", err } name := meta.GetName() - if msgs := validation.IsValidPathSegmentName(name); len(msgs) != 0 { + if msgs := path.IsValidPathSegmentName(name); len(msgs) != 0 { return "", fmt.Errorf("invalid name: %v", msgs) } return prefix + "/" + meta.GetNamespace() + "/" + name, nil @@ -119,7 +119,7 @@ func NoNamespaceKeyFunc(prefix string, obj runtime.Object) (string, error) { return "", err } name := meta.GetName() - if msgs := validation.IsValidPathSegmentName(name); len(msgs) != 0 { + if msgs := path.IsValidPathSegmentName(name); len(msgs) != 0 { return "", fmt.Errorf("invalid name: %v", msgs) } return prefix + "/" + name, nil