summaryrefslogtreecommitdiff
path: root/pkg/domain/infra
diff options
context:
space:
mode:
authorPaul Holzinger <pholzing@redhat.com>2022-04-26 16:53:08 +0200
committerPaul Holzinger <pholzing@redhat.com>2022-04-26 18:12:27 +0200
commit4f8ece76fff31d31570af56e0ec4a4092e015b33 (patch)
tree3cc5c3b138028cf1054f737235e89f5a66b7624a /pkg/domain/infra
parent51fbf3da9ee34a8143df5baeda6032c1747446d2 (diff)
downloadpodman-4f8ece76fff31d31570af56e0ec4a4092e015b33.tar.gz
podman-4f8ece76fff31d31570af56e0ec4a4092e015b33.tar.bz2
podman-4f8ece76fff31d31570af56e0ec4a4092e015b33.zip
play kube: do not skip containers by name
We should not exclude contianers by name. If a users has a container with the name "inf" it is currently skipped. This is wrong. The k8s yaml does not contain infra containers so we do not have to skip them. Signed-off-by: Paul Holzinger <pholzing@redhat.com>
Diffstat (limited to 'pkg/domain/infra')
-rw-r--r--pkg/domain/infra/abi/play.go86
1 files changed, 42 insertions, 44 deletions
diff --git a/pkg/domain/infra/abi/play.go b/pkg/domain/infra/abi/play.go
index f914a53d0..45500b23c 100644
--- a/pkg/domain/infra/abi/play.go
+++ b/pkg/domain/infra/abi/play.go
@@ -435,53 +435,51 @@ func (ic *ContainerEngine) playKubePod(ctx context.Context, podName string, podY
initContainers = append(initContainers, ctr)
}
for _, container := range podYAML.Spec.Containers {
- if !strings.Contains(container.Name, "infra") {
- // Error out if the same name is used for more than one container
- if _, ok := ctrNames[container.Name]; ok {
- return nil, errors.Errorf("the pod %q is invalid; duplicate container name %q detected", podName, container.Name)
- }
- ctrNames[container.Name] = ""
- pulledImage, labels, err := ic.getImageAndLabelInfo(ctx, cwd, annotations, writer, container, options)
- if err != nil {
- return nil, err
- }
+ // Error out if the same name is used for more than one container
+ if _, ok := ctrNames[container.Name]; ok {
+ return nil, errors.Errorf("the pod %q is invalid; duplicate container name %q detected", podName, container.Name)
+ }
+ ctrNames[container.Name] = ""
+ pulledImage, labels, err := ic.getImageAndLabelInfo(ctx, cwd, annotations, writer, container, options)
+ if err != nil {
+ return nil, err
+ }
- for k, v := range podSpec.PodSpecGen.Labels { // add podYAML labels
- labels[k] = v
- }
+ for k, v := range podSpec.PodSpecGen.Labels { // add podYAML labels
+ labels[k] = v
+ }
- specgenOpts := kube.CtrSpecGenOptions{
- Annotations: annotations,
- Container: container,
- Image: pulledImage,
- Volumes: volumes,
- PodID: pod.ID(),
- PodName: podName,
- PodInfraID: podInfraID,
- ConfigMaps: configMaps,
- SeccompPaths: seccompPaths,
- RestartPolicy: ctrRestartPolicy,
- NetNSIsHost: p.NetNS.IsHost(),
- SecretsManager: secretsManager,
- LogDriver: options.LogDriver,
- LogOptions: options.LogOptions,
- Labels: labels,
- }
- specGen, err := kube.ToSpecGen(ctx, &specgenOpts)
- if err != nil {
- return nil, err
- }
- specGen.RawImageName = container.Image
- rtSpec, spec, opts, err := generate.MakeContainer(ctx, ic.Libpod, specGen, false, nil)
- if err != nil {
- return nil, err
- }
- ctr, err := generate.ExecuteCreate(ctx, ic.Libpod, rtSpec, spec, false, opts...)
- if err != nil {
- return nil, err
- }
- containers = append(containers, ctr)
+ specgenOpts := kube.CtrSpecGenOptions{
+ Annotations: annotations,
+ Container: container,
+ Image: pulledImage,
+ Volumes: volumes,
+ PodID: pod.ID(),
+ PodName: podName,
+ PodInfraID: podInfraID,
+ ConfigMaps: configMaps,
+ SeccompPaths: seccompPaths,
+ RestartPolicy: ctrRestartPolicy,
+ NetNSIsHost: p.NetNS.IsHost(),
+ SecretsManager: secretsManager,
+ LogDriver: options.LogDriver,
+ LogOptions: options.LogOptions,
+ Labels: labels,
+ }
+ specGen, err := kube.ToSpecGen(ctx, &specgenOpts)
+ if err != nil {
+ return nil, err
+ }
+ specGen.RawImageName = container.Image
+ rtSpec, spec, opts, err := generate.MakeContainer(ctx, ic.Libpod, specGen, false, nil)
+ if err != nil {
+ return nil, err
+ }
+ ctr, err := generate.ExecuteCreate(ctx, ic.Libpod, rtSpec, spec, false, opts...)
+ if err != nil {
+ return nil, err
}
+ containers = append(containers, ctr)
}
if options.Start != types.OptionalBoolFalse {