Files
podman/pkg/specgen/generate/pause_image.go
Jan Kaluza 224e791161 Replace podman pause image with rootfs.
This commit removes the code to build a local pause
image from the Containerfile. It is replaced with
code to find the catatonit binary and include it in
the Rootfs.

This removes the need to build a local pause container
image.

The same logic is also applied to createServiceContainer
which is originally also based on the pause image.

Fixes: #23292

Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2025-04-17 08:36:27 +02:00

35 lines
773 B
Go

//go:build !remote
package generate
import (
"context"
"github.com/containers/common/pkg/config"
"github.com/containers/podman/v5/libpod"
)
// PullInfraImage pulls down the specified image or the one set in
// containers.conf. If none is set, it returns an empty string. In this
// case, the rootfs-based pause image is used by libpod.
func PullInfraImage(rt *libpod.Runtime, imageName string) (string, error) {
rtConfig, err := rt.GetConfigNoCopy()
if err != nil {
return "", err
}
if imageName == "" {
imageName = rtConfig.Engine.InfraImage
}
if imageName != "" {
_, err := rt.LibimageRuntime().Pull(context.Background(), imageName, config.PullPolicyMissing, nil)
if err != nil {
return "", err
}
return imageName, nil
}
return "", nil
}