diff --git a/pkg/api/validation/validation.go b/pkg/api/validation/validation.go index 580d451cafa..9f4e7942cde 100644 --- a/pkg/api/validation/validation.go +++ b/pkg/api/validation/validation.go @@ -551,6 +551,9 @@ func ValidateBoundPod(pod *api.BoundPod) (errors []error) { // ValidateMinion tests if required fields in the minion are set. func ValidateMinion(minion *api.Minion) errs.ValidationErrorList { allErrs := errs.ValidationErrorList{} + if len(minion.Namespace) != 0 { + allErrs = append(allErrs, errs.NewFieldInvalid("namespace", minion.Namespace)) + } if len(minion.Name) == 0 { allErrs = append(allErrs, errs.NewFieldRequired("name", minion.Name)) } diff --git a/pkg/kubectl/cmd/resource.go b/pkg/kubectl/cmd/resource.go index 8072a47a362..d62f65d94e7 100644 --- a/pkg/kubectl/cmd/resource.go +++ b/pkg/kubectl/cmd/resource.go @@ -155,8 +155,10 @@ func ResourceFromFile(filename string, typer runtime.ObjectTyper, mapper meta.RE // prevents a user from unintentionally updating the wrong namespace. func CompareNamespaceFromFile(cmd *cobra.Command, namespace string) error { defaultNamespace := getKubeNamespace(cmd) - if defaultNamespace != namespace { - return fmt.Errorf("the namespace from the provided file %q does not match the namespace %q. You must pass '--namespace=%s' to perform this operation.", namespace, defaultNamespace, namespace) + if len(namespace) > 0 { + if defaultNamespace != namespace { + return fmt.Errorf("the namespace from the provided file %q does not match the namespace %q. You must pass '--namespace=%s' to perform this operation.", namespace, defaultNamespace, namespace) + } } return nil } diff --git a/pkg/registry/minion/rest.go b/pkg/registry/minion/rest.go index c3f8076083c..48fb4bdbc01 100644 --- a/pkg/registry/minion/rest.go +++ b/pkg/registry/minion/rest.go @@ -59,10 +59,6 @@ func (rs *REST) Create(ctx api.Context, obj runtime.Object) (<-chan apiserver.RE api.FillObjectMetaSystemFields(ctx, &minion.ObjectMeta) return apiserver.MakeAsync(func() (runtime.Object, error) { - // TODO: Need to fill in any server-set fields (uid, timestamp, etc) before - // returning minion. Can't do it properly at the moment because the registry - // healthchecking, which might cause it to not return the minion at all. Fix - // this after we move the healthchecking out of the minion registry. err := rs.registry.CreateMinion(ctx, minion) if err != nil { return nil, err