mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-31 23:37:01 +00:00
SimpleNameGenerator: unify to use k8s.io/apiserver/pkg/storage/names
This commit is contained in:
parent
b926ca40de
commit
9488150762
@ -19,7 +19,6 @@ go_library(
|
|||||||
"//federation/pkg/kubefed/init:go_default_library",
|
"//federation/pkg/kubefed/init:go_default_library",
|
||||||
"//federation/pkg/kubefed/util:go_default_library",
|
"//federation/pkg/kubefed/util:go_default_library",
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/apis/extensions:go_default_library",
|
"//pkg/apis/extensions:go_default_library",
|
||||||
"//pkg/apis/rbac:go_default_library",
|
"//pkg/apis/rbac:go_default_library",
|
||||||
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
||||||
@ -37,6 +36,7 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/storage/names:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/util/flag:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/util/flag:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library",
|
"//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library",
|
||||||
|
@ -26,11 +26,11 @@ import (
|
|||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
clientcmdapi "k8s.io/client-go/tools/clientcmd/api"
|
clientcmdapi "k8s.io/client-go/tools/clientcmd/api"
|
||||||
"k8s.io/kubernetes/federation/apis/federation"
|
"k8s.io/kubernetes/federation/apis/federation"
|
||||||
"k8s.io/kubernetes/federation/pkg/kubefed/util"
|
"k8s.io/kubernetes/federation/pkg/kubefed/util"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
|
||||||
extensions "k8s.io/kubernetes/pkg/apis/extensions"
|
extensions "k8s.io/kubernetes/pkg/apis/extensions"
|
||||||
"k8s.io/kubernetes/pkg/apis/rbac"
|
"k8s.io/kubernetes/pkg/apis/rbac"
|
||||||
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
||||||
@ -183,7 +183,7 @@ func (j *joinFederation) Run(f cmdutil.Factory, cmdOut io.Writer, config util.Ad
|
|||||||
joiningClusterName := j.commonOptions.Name
|
joiningClusterName := j.commonOptions.Name
|
||||||
secretName := j.options.secretName
|
secretName := j.options.secretName
|
||||||
if secretName == "" {
|
if secretName == "" {
|
||||||
secretName = k8s_api_v1.SimpleNameGenerator.GenerateName(j.commonOptions.Name + "-")
|
secretName = names.SimpleNameGenerator.GenerateName(j.commonOptions.Name + "-")
|
||||||
}
|
}
|
||||||
|
|
||||||
joiningClusterFactory := j.joningClusterFactory(config)
|
joiningClusterFactory := j.joningClusterFactory(config)
|
||||||
|
@ -29,7 +29,6 @@ go_library(
|
|||||||
"//federation/pkg/federation-controller/util:go_default_library",
|
"//federation/pkg/federation-controller/util:go_default_library",
|
||||||
"//federation/test/e2e/framework:go_default_library",
|
"//federation/test/e2e/framework:go_default_library",
|
||||||
"//federation/test/e2e/upgrades:go_default_library",
|
"//federation/test/e2e/upgrades:go_default_library",
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/cloudprovider:go_default_library",
|
"//pkg/cloudprovider:go_default_library",
|
||||||
"//test/e2e/chaosmonkey:go_default_library",
|
"//test/e2e/chaosmonkey:go_default_library",
|
||||||
"//test/e2e/common:go_default_library",
|
"//test/e2e/common:go_default_library",
|
||||||
@ -47,6 +46,7 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/storage/names:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/kubernetes:go_default_library",
|
"//vendor/k8s.io/client-go/kubernetes:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
||||||
],
|
],
|
||||||
|
@ -26,9 +26,9 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/api/errors"
|
"k8s.io/apimachinery/pkg/api/errors"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
clientset "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset/typed/core/v1"
|
clientset "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset/typed/core/v1"
|
||||||
fedframework "k8s.io/kubernetes/federation/test/e2e/framework"
|
fedframework "k8s.io/kubernetes/federation/test/e2e/framework"
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
|
|
||||||
. "github.com/onsi/ginkgo"
|
. "github.com/onsi/ginkgo"
|
||||||
@ -71,7 +71,7 @@ var _ = framework.KubeDescribe("Federation namespace [Feature:Federation]", func
|
|||||||
fedframework.SkipUnlessFederated(f.ClientSet)
|
fedframework.SkipUnlessFederated(f.ClientSet)
|
||||||
|
|
||||||
nsName = createNamespace(f.FederationClientset.Core().Namespaces())
|
nsName = createNamespace(f.FederationClientset.Core().Namespaces())
|
||||||
rsName := k8s_api_v1.SimpleNameGenerator.GenerateName(replicaSetNamePrefix)
|
rsName := names.SimpleNameGenerator.GenerateName(replicaSetNamePrefix)
|
||||||
replicaCount := int32(2)
|
replicaCount := int32(2)
|
||||||
rs := &v1beta1.ReplicaSet{
|
rs := &v1beta1.ReplicaSet{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
@ -123,7 +123,7 @@ var _ = framework.KubeDescribe("Federation namespace [Feature:Federation]", func
|
|||||||
// Create resources in the namespace.
|
// Create resources in the namespace.
|
||||||
event := v1.Event{
|
event := v1.Event{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: k8s_api_v1.SimpleNameGenerator.GenerateName(eventNamePrefix),
|
Name: names.SimpleNameGenerator.GenerateName(eventNamePrefix),
|
||||||
Namespace: nsName,
|
Namespace: nsName,
|
||||||
},
|
},
|
||||||
InvolvedObject: v1.ObjectReference{
|
InvolvedObject: v1.ObjectReference{
|
||||||
@ -199,7 +199,7 @@ func verifyNsCascadingDeletion(nsClient clientset.NamespaceInterface, clusters f
|
|||||||
func createNamespace(nsClient clientset.NamespaceInterface) string {
|
func createNamespace(nsClient clientset.NamespaceInterface) string {
|
||||||
ns := v1.Namespace{
|
ns := v1.Namespace{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: k8s_api_v1.SimpleNameGenerator.GenerateName(namespacePrefix),
|
Name: names.SimpleNameGenerator.GenerateName(namespacePrefix),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
By(fmt.Sprintf("Creating namespace %s", ns.Name))
|
By(fmt.Sprintf("Creating namespace %s", ns.Name))
|
||||||
|
@ -39,50 +39,6 @@ go_test(
|
|||||||
library = ":go_default_library",
|
library = ":go_default_library",
|
||||||
)
|
)
|
||||||
|
|
||||||
go_test(
|
|
||||||
name = "go_default_xtest",
|
|
||||||
srcs = [
|
|
||||||
"conversion_test.go",
|
|
||||||
"copy_test.go",
|
|
||||||
"deep_copy_test.go",
|
|
||||||
"defaulting_test.go",
|
|
||||||
"meta_test.go",
|
|
||||||
"serialization_proto_test.go",
|
|
||||||
"serialization_test.go",
|
|
||||||
"unstructured_test.go",
|
|
||||||
],
|
|
||||||
deps = [
|
|
||||||
":go_default_library",
|
|
||||||
"//pkg/api/testapi:go_default_library",
|
|
||||||
"//pkg/api/testing:go_default_library",
|
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/apis/extensions:go_default_library",
|
|
||||||
"//pkg/apis/extensions/v1beta1:go_default_library",
|
|
||||||
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
|
|
||||||
"//vendor/github.com/golang/protobuf/proto:go_default_library",
|
|
||||||
"//vendor/github.com/google/gofuzz:go_default_library",
|
|
||||||
"//vendor/github.com/json-iterator/go:go_default_library",
|
|
||||||
"//vendor/k8s.io/api/core/v1:go_default_library",
|
|
||||||
"//vendor/k8s.io/api/extensions/v1beta1:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/testing/fuzzer:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/testing/roundtrip:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/conversion/unstructured:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/streaming:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/json:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/watch:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
filegroup(
|
||||||
name = "package-srcs",
|
name = "package-srcs",
|
||||||
srcs = glob(["**"]),
|
srcs = glob(["**"]),
|
||||||
|
@ -3,12 +3,14 @@ package(default_visibility = ["//visibility:public"])
|
|||||||
load(
|
load(
|
||||||
"@io_bazel_rules_go//go:def.bzl",
|
"@io_bazel_rules_go//go:def.bzl",
|
||||||
"go_library",
|
"go_library",
|
||||||
|
"go_test",
|
||||||
)
|
)
|
||||||
|
|
||||||
go_library(
|
go_library(
|
||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
srcs = [
|
srcs = [
|
||||||
"conversion.go",
|
"conversion.go",
|
||||||
|
"doc.go",
|
||||||
"fuzzer.go",
|
"fuzzer.go",
|
||||||
"pod_specs.go",
|
"pod_specs.go",
|
||||||
],
|
],
|
||||||
@ -54,3 +56,52 @@ filegroup(
|
|||||||
],
|
],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
go_test(
|
||||||
|
name = "go_default_test",
|
||||||
|
srcs = [
|
||||||
|
"backward_compatibility_test.go",
|
||||||
|
"conversion_test.go",
|
||||||
|
"copy_test.go",
|
||||||
|
"deep_copy_test.go",
|
||||||
|
"defaulting_test.go",
|
||||||
|
"meta_test.go",
|
||||||
|
"serialization_proto_test.go",
|
||||||
|
"serialization_test.go",
|
||||||
|
"unstructured_test.go",
|
||||||
|
],
|
||||||
|
library = ":go_default_library",
|
||||||
|
deps = [
|
||||||
|
"//pkg/api:go_default_library",
|
||||||
|
"//pkg/api/install:go_default_library",
|
||||||
|
"//pkg/api/testapi:go_default_library",
|
||||||
|
"//pkg/api/testing/compat:go_default_library",
|
||||||
|
"//pkg/api/v1:go_default_library",
|
||||||
|
"//pkg/api/validation:go_default_library",
|
||||||
|
"//pkg/apis/extensions:go_default_library",
|
||||||
|
"//pkg/apis/extensions/v1beta1:go_default_library",
|
||||||
|
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
|
||||||
|
"//vendor/github.com/golang/protobuf/proto:go_default_library",
|
||||||
|
"//vendor/github.com/google/gofuzz:go_default_library",
|
||||||
|
"//vendor/github.com/json-iterator/go:go_default_library",
|
||||||
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
||||||
|
"//vendor/k8s.io/api/extensions/v1beta1:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/testing/fuzzer:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/testing/roundtrip:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/conversion/unstructured:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/streaming:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/json:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/watch:go_default_library",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
@ -12,7 +12,6 @@ go_library(
|
|||||||
"conversion.go",
|
"conversion.go",
|
||||||
"defaults.go",
|
"defaults.go",
|
||||||
"doc.go",
|
"doc.go",
|
||||||
"generate.go",
|
|
||||||
"register.go",
|
"register.go",
|
||||||
"zz_generated.conversion.go",
|
"zz_generated.conversion.go",
|
||||||
"zz_generated.defaults.go",
|
"zz_generated.defaults.go",
|
||||||
@ -30,7 +29,6 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
@ -38,16 +36,13 @@ go_library(
|
|||||||
go_test(
|
go_test(
|
||||||
name = "go_default_xtest",
|
name = "go_default_xtest",
|
||||||
srcs = [
|
srcs = [
|
||||||
"backward_compatibility_test.go",
|
|
||||||
"conversion_test.go",
|
"conversion_test.go",
|
||||||
"defaults_test.go",
|
"defaults_test.go",
|
||||||
],
|
],
|
||||||
deps = [
|
deps = [
|
||||||
":go_default_library",
|
":go_default_library",
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/install:go_default_library",
|
"//pkg/api/testapi:go_default_library",
|
||||||
"//pkg/api/testing/compat:go_default_library",
|
|
||||||
"//pkg/api/validation:go_default_library",
|
|
||||||
"//vendor/k8s.io/api/core/v1:go_default_library",
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library",
|
||||||
@ -55,7 +50,6 @@ go_test(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -1,65 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2014 The Kubernetes Authors.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package v1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"k8s.io/api/core/v1"
|
|
||||||
|
|
||||||
utilrand "k8s.io/apimachinery/pkg/util/rand"
|
|
||||||
)
|
|
||||||
|
|
||||||
// NameGenerator generates names for objects. Some backends may have more information
|
|
||||||
// available to guide selection of new names and this interface hides those details.
|
|
||||||
type NameGenerator interface {
|
|
||||||
// GenerateName generates a valid name from the base name, adding a random suffix to the
|
|
||||||
// the base. If base is valid, the returned name must also be valid. The generator is
|
|
||||||
// responsible for knowing the maximum valid name length.
|
|
||||||
GenerateName(base string) string
|
|
||||||
}
|
|
||||||
|
|
||||||
// GenerateName will resolve the object name of the provided v1.ObjectMeta to a generated version if
|
|
||||||
// necessary. It expects that validation for v1.ObjectMeta has already completed (that Base is a
|
|
||||||
// valid name) and that the NameGenerator generates a name that is also valid.
|
|
||||||
func GenerateName(u NameGenerator, meta *v1.ObjectMeta) {
|
|
||||||
if len(meta.GenerateName) == 0 || len(meta.Name) != 0 {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
meta.Name = u.GenerateName(meta.GenerateName)
|
|
||||||
}
|
|
||||||
|
|
||||||
// simpleNameGenerator generates random names.
|
|
||||||
type simpleNameGenerator struct{}
|
|
||||||
|
|
||||||
// SimpleNameGenerator is a generator that returns the name plus a random suffix of five alphanumerics
|
|
||||||
// when a name is requested. The string is guaranteed to not exceed the length of a standard Kubernetes
|
|
||||||
// name (63 characters)
|
|
||||||
var SimpleNameGenerator NameGenerator = simpleNameGenerator{}
|
|
||||||
|
|
||||||
const (
|
|
||||||
// TODO: make this flexible for non-core resources with alternate naming rules.
|
|
||||||
maxNameLength = 63
|
|
||||||
randomLength = 5
|
|
||||||
maxGeneratedNameLength = maxNameLength - randomLength
|
|
||||||
)
|
|
||||||
|
|
||||||
func (simpleNameGenerator) GenerateName(base string) string {
|
|
||||||
if len(base) > maxGeneratedNameLength {
|
|
||||||
base = base[:maxGeneratedNameLength]
|
|
||||||
}
|
|
||||||
return fmt.Sprintf("%s%s", base, utilrand.String(randomLength))
|
|
||||||
}
|
|
@ -46,7 +46,6 @@ go_test(
|
|||||||
],
|
],
|
||||||
library = ":go_default_library",
|
library = ":go_default_library",
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/controller:go_default_library",
|
"//pkg/controller:go_default_library",
|
||||||
"//pkg/util/hash:go_default_library",
|
"//pkg/util/hash:go_default_library",
|
||||||
"//vendor/k8s.io/api/core/v1:go_default_library",
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
||||||
@ -56,6 +55,7 @@ go_test(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/storage/names:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/kubernetes/fake:go_default_library",
|
"//vendor/k8s.io/client-go/kubernetes/fake:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/testing:go_default_library",
|
"//vendor/k8s.io/client-go/testing:go_default_library",
|
||||||
],
|
],
|
||||||
|
@ -32,9 +32,9 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/runtime"
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
"k8s.io/apimachinery/pkg/types"
|
"k8s.io/apimachinery/pkg/types"
|
||||||
"k8s.io/apimachinery/pkg/util/intstr"
|
"k8s.io/apimachinery/pkg/util/intstr"
|
||||||
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
"k8s.io/client-go/kubernetes/fake"
|
"k8s.io/client-go/kubernetes/fake"
|
||||||
core "k8s.io/client-go/testing"
|
core "k8s.io/client-go/testing"
|
||||||
apiv1 "k8s.io/kubernetes/pkg/api/v1"
|
|
||||||
"k8s.io/kubernetes/pkg/controller"
|
"k8s.io/kubernetes/pkg/controller"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ func addUpdatePodsReactor(fakeClient *fake.Clientset) *fake.Clientset {
|
|||||||
func generateRSWithLabel(labels map[string]string, image string) extensions.ReplicaSet {
|
func generateRSWithLabel(labels map[string]string, image string) extensions.ReplicaSet {
|
||||||
return extensions.ReplicaSet{
|
return extensions.ReplicaSet{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: apiv1.SimpleNameGenerator.GenerateName("replicaset"),
|
Name: names.SimpleNameGenerator.GenerateName("replicaset"),
|
||||||
Labels: labels,
|
Labels: labels,
|
||||||
},
|
},
|
||||||
Spec: extensions.ReplicaSetSpec{
|
Spec: extensions.ReplicaSetSpec{
|
||||||
@ -130,7 +130,7 @@ func generateRS(deployment extensions.Deployment) extensions.ReplicaSet {
|
|||||||
return extensions.ReplicaSet{
|
return extensions.ReplicaSet{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
UID: randomUID(),
|
UID: randomUID(),
|
||||||
Name: apiv1.SimpleNameGenerator.GenerateName("replicaset"),
|
Name: names.SimpleNameGenerator.GenerateName("replicaset"),
|
||||||
Labels: template.Labels,
|
Labels: template.Labels,
|
||||||
OwnerReferences: []metav1.OwnerReference{*newDControllerRef(&deployment)},
|
OwnerReferences: []metav1.OwnerReference{*newDControllerRef(&deployment)},
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user