mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 12:15:52 +00:00
fix kubectl create deployment image name
This commit is contained in:
parent
c84b1a8a10
commit
5db45e12d5
@ -44,6 +44,7 @@ go_library(
|
||||
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||
"//staging/src/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||
"//staging/src/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
||||
"//staging/src/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||
"//staging/src/k8s.io/apimachinery/pkg/util/validation:go_default_library",
|
||||
"//staging/src/k8s.io/client-go/discovery:go_default_library",
|
||||
|
@ -26,6 +26,7 @@ import (
|
||||
extensionsv1beta1 "k8s.io/api/extensions/v1beta1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
utilrand "k8s.io/apimachinery/pkg/util/rand"
|
||||
"k8s.io/kubectl/pkg/generate"
|
||||
)
|
||||
|
||||
@ -84,11 +85,23 @@ func buildPodSpec(images []string) v1.PodSpec {
|
||||
if strings.Contains(name, "@") {
|
||||
name = strings.Split(name, "@")[0]
|
||||
}
|
||||
name = sanitizeAndUniquify(name)
|
||||
podSpec.Containers = append(podSpec.Containers, v1.Container{Name: name, Image: imageString})
|
||||
}
|
||||
return podSpec
|
||||
}
|
||||
|
||||
// sanitizeAndUniquify: replaces characters like "." or "_" into "-" to follow DNS1123 rules.
|
||||
// Then add random suffix to make it uniquified.
|
||||
func sanitizeAndUniquify(name string) string {
|
||||
if strings.Contains(name, "_") || strings.Contains(name, ".") {
|
||||
name = strings.Replace(name, "_", "-", -1)
|
||||
name = strings.Replace(name, ".", "-", -1)
|
||||
name = fmt.Sprintf("%s-%s", name, utilrand.String(5))
|
||||
}
|
||||
return name
|
||||
}
|
||||
|
||||
// DeploymentBasicGeneratorV1 supports stable generation of a deployment
|
||||
type DeploymentBasicGeneratorV1 struct {
|
||||
BaseDeploymentGenerator
|
||||
|
Loading…
Reference in New Issue
Block a user