Rollup merge of #116761 - Nilstrieb:podman, r=cuviper

Fix podman detection in CI scripts

When docker-podman compat was set up in a way that causes "docker" to be the argv[0] of podman, the previous detection did not work. This was for example the case in the compat package from nixpkgs.

This checks the output and should work everywhere.

I tested it locally by executing
```sh
if [[ "$id" != 0 && "$(docker version)" =~ Podman ]]; then
    echo yes
else
    echo no
fi
```
which printed `no` before, and `yes` now.

fixes #113129

r? cuviper
This commit is contained in:
León Orell Valerian Liehr 2023-10-19 04:34:45 +02:00 committed by GitHub
commit 29d98777cb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -235,7 +235,7 @@ else
args="$args --volume /tmp/toolstate:/tmp/toolstate"
id=$(id -u)
if [[ "$id" != 0 && "$(docker -v)" =~ ^podman ]]; then
if [[ "$id" != 0 && "$(docker version)" =~ Podman ]]; then
# Rootless podman creates a separate user namespace, where an inner
# LOCAL_USER_ID will map to a different subuid range on the host.
# The "keep-id" mode maps the current UID directly into the container.