Confirm runc support / update installation docs
TL;DR
Podman installation documentation indicates that both crun and runc are supported, but some PRs closed in 2024 (PR#22706, PR#23020) indicate support for runc was dropped, and the release note was never propagated to any release.
Details
Having recently submitted a PR to update some documentation in Podman which resulted in some Cirrus CI failures (PR#25111), I wanted to get a better understanding of the tests. I had been linked to the .cirrus.yml file and I was skimming it when my eyes were immediately drawn to the following line:
CI_DESIRED_RUNTIME: crun # As of 2024-05-28 there are no other supported runtimes
I was mildly horrified to see this, as I had just submitted (and had approved and merged!) my first podman.io PR a few days ago (PR#363), and one of the items on my PR was to switch FROM crun to runc when installing Podman from source on Debian, due to an error I ran into doing so (crun unknown version specified). I turned on Blame so I could figure out what was going on and found the following PRs removing runc support:
- https://github.com/containers/podman/pull/22706
- https://github.com/containers/podman/pull/23020
PR#22706 has the following release note in the body:
Podman no longer supports runc nor cgroups v1
However, I checked every Release after the date that was merged, and all of the tags linked to the commit, and I could not find any evidence of this release note making it "public".
What to do?
In conclusion, this issue is to track whether or not Podman supports runc, and if not, track the need to update the installation documentation (I am willing to take this on, if not just to correct my "mistake"). I am guessing there will need to be a corresponding issue in Podman, as I see runc all over it (I am definitely not the best person for this task).
Support is a relative term, we dropped support for our CI env as running both runtimes was significant work we no longer wanted to do.
That said podman should still work runc, we don't somehow intentionally break compatibility. Of course given no upstream tests it is possible that something breaks without us noticing. And if that then is actually a podman and not a runc bug you are welcome to file bug reports upstream and we will accept patches.
But yes overall we prefer crun as it is maintained by us as well so I guess it would make the most sense for the docs to show how to install crun.