summaryrefslogtreecommitdiff
path: root/.gitlab-ci/run-docker.sh
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci/run-docker.sh')
-rwxr-xr-x.gitlab-ci/run-docker.sh19
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