Support building with Podman instead of Docker

When /usr/bin/docker is a wrapper for podman (as common no Fedora),
Podman will be used which requires the full image name including the
registry. It does not require the chown step, because this results in
the files being owned by a temporary mapped ID due to the user
namespace in rootless mode (which is the default unless Podman is run
by the root user) - make the chown a no-op by using UID/GID 0.
This commit is contained in:
Kai Lueke 2022-06-30 13:01:47 +02:00
parent 9e949d833f
commit f052709112
2 changed files with 6 additions and 3 deletions

View file

@ -4,8 +4,11 @@ SHELL := bash
IMAGE_TAG = garm-build
USER_ID=$(shell (docker --version | grep -q podman) && echo "0" || shell id -u)
USER_GROUP=$(shell (docker --version | grep -q podman) && echo "0" || shell id -g)
build-static:
@echo Building garm
docker build --tag $(IMAGE_TAG) .
docker run --rm -e USER_ID="$(shell id -u)" -e USER_GROUP="$(shell id -g)" -v $(PWD):/build/garm $(IMAGE_TAG) /build-static.sh
docker run --rm -e USER_ID=$(USER_ID) -e USER_GROUP=$(USER_GROUP) -v $(PWD):/build/garm $(IMAGE_TAG) /build-static.sh
@echo Binaries are available in $(PWD)/bin