Open tom-tan opened 4 days ago
https://github.com/containers/podman/commit/3fee351c355788aed0d5f9e069f8b14ed7eb109a https://github.com/containers/podman/issues/16387
Removing the file with the container seemed logical and given nobody reported it since then I must assume it really isn't that important.
The other question is what value do you expect to get out of a cidfile when the corresponding container has already been removed?
Issue Description
The official document says:
Therefore, we expect that Podman with an option behaves as same as Docker with the same option if possible.
In the case of Docker, the
run
subcommand with--cidfile
option generates a file with CID and leaves it as is when the container instance terminated. I confirmed that Podman 4.3.1 and earlier behaves as same as Docker, that is, therun
subcommand with--cidfile
generates a file and leave it as is when the instance terminated.On the other hand, Padman 4.4.1 and later behaves differently. That is, the
run
subcommand with--cidfile
generates a file but removed when the instance terminated.This behavior change breaks existing tools such as
cwltool
, that is an executor of scientific workflows written in the Common Workflow Language. In the case ofcwltool
, it executes containerized scientific tools with Podman and reports the detailed information such as CIDs after finishing the execution. Since Podman 4.4.1, cwltool fails to collect the CIDs and thus fails to execute a given workflow.Is this behavior change a bug (i.e., unintended) or is it intended behavior change? If intended, it is helpful if there is a list of such inconsistent behaviors with Docker. Also it would be nice if the changelog mentions such breaking changes.
Steps to reproduce the issue
Execute the following commands:
Describe the results you received
Since Podman v4.4.1, I received the following:
That is,
foo.cid
is removed after finishing the execution. It is inconsistent behavior with Docker.Describe the results you expected
Here is a message I expected and I got from Podman v4.3.1 and earlier:
That is,
foo.cid
remains after finishing execution. This behavior is compatible with Docker.podman info output
Podman in a container
No
Privileged Or Rootless
Rootless
Upstream Latest Release
Yes
Additional environment details
I confirmed it happens with the following environments:
podman info
is shown above)quay.io/podman/stable
) with the following tags:v4.4.1
,v4.4.4
,v4.6.2
,v4.9.3
,v4.9.4
andv5.1.1
on Podman 3.4.4 on Ubuntu 22.04 (installed from the universe repository)I confirmed it does not happen (i.e., compatible behavior with Docker) with the following environments:
quay.io/podman/stable
) with the following tags:v3.4.7
,v4.2.1
, andv4.3.1
on Podman 3.4.4 on Ubuntu 22.04Additional information
Additional information like issue happens only occasionally or issue happens with a particular architecture or on a particular setting