diff options
Diffstat (limited to '.gitlab-ci/run-docker.sh')
-rwxr-xr-x | .gitlab-ci/run-docker.sh | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/.gitlab-ci/run-docker.sh b/.gitlab-ci/run-docker.sh index 6bb7df13..d8c4a51e 100755 --- a/.gitlab-ci/run-docker.sh +++ b/.gitlab-ci/run-docker.sh @@ -4,14 +4,25 @@ set -e TAG="registry.gitlab.gnome.org/gnome/libsoup/master:v9" +SUDO_CMD="sudo" +if docker -v |& grep -q podman; then + # Using podman + SUDO_CMD="" + # Docker is actually implemented by podman, and its OCI output + # is incompatible with some of the dockerd instances on GitLab + # CI runners. + export BUILDAH_FORMAT=docker +fi + cd "$(dirname "$0")" -podman build --build-arg HOST_USER_ID="$UID" --tag "${TAG}" --file "Dockerfile" --format=docker . +$SUDO_CMD docker build --build-arg HOST_USER_ID="$UID" --tag "${TAG}" \ + --file "Dockerfile" . if [ "$1" = "--push" ]; then - podman login registry.gitlab.gnome.org - podman push $TAG + $SUDO_CMD docker login registry.gitlab.gnome.org + $SUDO_CMD docker push $TAG else - podman run --rm \ + $SUDO_CMD docker run --rm \ --volume "$(pwd)/..:/home/user/app" --workdir "/home/user/app" \ --tty --interactive "${TAG}" bash fi |