mirror of
https://github.com/containers/podman.git
synced 2026-07-09 06:44:58 -04:00
The current systemd service to mount /etc/containers is not working right. The Before=podman.socket causes a ordering conflict which causes the socket to be disabled and thus all podman remote connections fail. The problem is the unit is wanted by the default.target while the socket is wanted by sockets.target which can be before the default.target is triggered. That means that the Before= line cannot be fulfilled and sometimes systemd thus seems to not start the socket. It is unclear to me why this is racy as it is sometimes also works. This was reported by Vladimir Lazar from the PD team, our CI did not caught this as we use rootless machines by default and the problem only happens for the rootful socket so we do not see connection failures. To fix this add at least one rootful socket check. We do however have a different CI flake that was also caused by the incorrect mount dependencies. The mount could happen after sshd or other programs run. So to fix this we must hook the podman-mnt-config.service into the local-fs.target which runs much earlier and is used for all the mounts. Fixes: #29003 Signed-off-by: Paul Holzinger <pholzing@redhat.com>