Merge pull request #2451 from baude/playrenamepodoncollision

rename pod when we have a name collision with a container
This commit is contained in:
OpenShift Merge Robot
2019-03-01 12:22:07 -08:00
committed by GitHub

View File

@ -90,8 +90,17 @@ func playKubeYAMLCmd(c *cliconfig.KubePlayValues) error {
return errors.Wrapf(err, "unable to read %s as YAML", args[0]) return errors.Wrapf(err, "unable to read %s as YAML", args[0])
} }
// check for name collision between pod and container
podName := podYAML.ObjectMeta.Name
for _, n := range podYAML.Spec.Containers {
if n.Name == podName {
fmt.Printf("a container exists with the same name (%s) as the pod in your YAML file; changing pod name to %s_pod\n", podName, podName)
podName = fmt.Sprintf("%s_pod", podName)
}
}
podOptions = append(podOptions, libpod.WithInfraContainer()) podOptions = append(podOptions, libpod.WithInfraContainer())
podOptions = append(podOptions, libpod.WithPodName(podYAML.ObjectMeta.Name)) podOptions = append(podOptions, libpod.WithPodName(podName))
// TODO for now we just used the default kernel namespaces; we need to add/subtract this from yaml // TODO for now we just used the default kernel namespaces; we need to add/subtract this from yaml
nsOptions, err := shared.GetNamespaceOptions(strings.Split(DefaultKernelNamespaces, ",")) nsOptions, err := shared.GetNamespaceOptions(strings.Split(DefaultKernelNamespaces, ","))