Merge pull request #9368 from vrothberg/fix-9365
podman build: pass runtime to buildah
This commit is contained in:
commit
6639b218a2
|
@ -166,6 +166,11 @@ func (r *Runtime) newImageBuildCompleteEvent(idOrName string) {
|
||||||
|
|
||||||
// Build adds the runtime to the imagebuildah call
|
// Build adds the runtime to the imagebuildah call
|
||||||
func (r *Runtime) Build(ctx context.Context, options imagebuildah.BuildOptions, dockerfiles ...string) (string, reference.Canonical, error) {
|
func (r *Runtime) Build(ctx context.Context, options imagebuildah.BuildOptions, dockerfiles ...string) (string, reference.Canonical, error) {
|
||||||
|
if options.Runtime == "" {
|
||||||
|
// Make sure that build containers use the same runtime as Podman (see #9365).
|
||||||
|
conf := util.DefaultContainerConfig()
|
||||||
|
options.Runtime = conf.Engine.OCIRuntime
|
||||||
|
}
|
||||||
id, ref, err := imagebuildah.BuildDockerfiles(ctx, r.store, options, dockerfiles...)
|
id, ref, err := imagebuildah.BuildDockerfiles(ctx, r.store, options, dockerfiles...)
|
||||||
// Write event for build completion
|
// Write event for build completion
|
||||||
r.newImageBuildCompleteEvent(id)
|
r.newImageBuildCompleteEvent(id)
|
||||||
|
|
|
@ -46,6 +46,31 @@ EOF
|
||||||
is "$output" ".*invalidflag" "failed when passing undefined flags to the runtime"
|
is "$output" ".*invalidflag" "failed when passing undefined flags to the runtime"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@test "podman build - set runtime" {
|
||||||
|
skip_if_remote "--runtime flag not supported for remote"
|
||||||
|
# Test on the CLI and via containers.conf
|
||||||
|
|
||||||
|
tmpdir=$PODMAN_TMPDIR/build-test
|
||||||
|
run mkdir -p $tmpdir
|
||||||
|
containerfile=$tmpdir/Containerfile
|
||||||
|
cat >$containerfile <<EOF
|
||||||
|
FROM $IMAGE
|
||||||
|
RUN echo $rand_content
|
||||||
|
EOF
|
||||||
|
|
||||||
|
run_podman 125 --runtime=idonotexist build -t build_test $tmpdir
|
||||||
|
is "$output" ".*\"idonotexist\" not found.*" "failed when passing invalid OCI runtime via CLI"
|
||||||
|
|
||||||
|
containersconf=$tmpdir/containers.conf
|
||||||
|
cat >$containersconf <<EOF
|
||||||
|
[engine]
|
||||||
|
runtime="idonotexist"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
CONTAINERS_CONF="$containersconf" run_podman 125 build -t build_test $tmpdir
|
||||||
|
is "$output" ".*\"idonotexist\" not found.*" "failed when passing invalid OCI runtime via containers.conf"
|
||||||
|
}
|
||||||
|
|
||||||
# Regression from v1.5.0. This test passes fine in v1.5.0, fails in 1.6
|
# Regression from v1.5.0. This test passes fine in v1.5.0, fails in 1.6
|
||||||
@test "podman build - cache (#3920)" {
|
@test "podman build - cache (#3920)" {
|
||||||
# Make an empty test directory, with a subdirectory used for tar
|
# Make an empty test directory, with a subdirectory used for tar
|
||||||
|
|
Loading…
Reference in New Issue