diff --git a/pkg/domain/infra/abi/play.go b/pkg/domain/infra/abi/play.go index f11a92085f..63d0f657b9 100644 --- a/pkg/domain/infra/abi/play.go +++ b/pkg/domain/infra/abi/play.go @@ -65,6 +65,10 @@ func (ic *ContainerEngine) createServiceContainer(ctx context.Context, name stri return nil, fmt.Errorf("image for service container: %w", err) } + rtc, err := ic.Libpod.GetConfigNoCopy() + if err != nil { + return nil, err + } ctrOpts := entities.ContainerCreateOptions{ // Inherited from infra containers ImageVolume: define.TypeBind, @@ -73,7 +77,8 @@ func (ic *ContainerEngine) createServiceContainer(ctx context.Context, name stri ReadOnly: true, ReadWriteTmpFS: false, // No need to spin up slirp etc. - Net: &entities.NetOptions{Network: specgen.Namespace{NSMode: specgen.NoNetwork}}, + Net: &entities.NetOptions{Network: specgen.Namespace{NSMode: specgen.NoNetwork}}, + StopTimeout: rtc.Engine.StopTimeout, } // Create and fill out the runtime spec. diff --git a/test/apiv2/20-containers.at b/test/apiv2/20-containers.at index b057ef8936..a0a652ac60 100644 --- a/test/apiv2/20-containers.at +++ b/test/apiv2/20-containers.at @@ -308,7 +308,7 @@ cid_top=$(jq -r '.Id' <<<"$output") t GET containers/${cid_top}/json 200 \ .Config.Entrypoint[0]="top" \ .Config.Cmd='[]' \ - .Config.StopTimeput="10" \ + .Config.StopTimeout="10" \ .Path="top" \ .NetworkSettings.Networks.podman.NetworkID=podman t POST containers/${cid_top}/start 204 diff --git a/test/system/700-play.bats b/test/system/700-play.bats index 122e4ccc45..efa8eced50 100644 --- a/test/system/700-play.bats +++ b/test/system/700-play.bats @@ -206,6 +206,9 @@ EOF run_podman container inspect $service_container --format "{{.State.Running}}" is "$output" "true" + run_podman container inspect $service_container --format '{{.Config.StopTimeout}}' + is "$output" "10" "StopTimeout should be initialized to 10" + # Stop the *main* container and make sure that # 1) The pod transitions to Exited # 2) The service container is stopped