diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index dc808f0..12982f6 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -17,6 +17,7 @@ jobs: build: name: Build ${{ matrix.image_name }} runs-on: ubuntu-latest + timeout-minutes: 280 strategy: fail-fast: false matrix: @@ -40,9 +41,9 @@ jobs: # buildah container instead — the same tool Bazzite itself is built with. - name: Build and push with buildah run: | - docker volume create kamos-buildah-cache >/dev/null 2>&1 || true + docker volume create kamos-buildah >/dev/null 2>&1 || true tar -cf - . | docker run --rm -i --privileged \ - -v kamos-buildah-cache:/var/lib/containers \ + -v kamos-buildah:/var/lib/containers \ -e IMAGE="${IMAGE}" \ -e DATE_TAG="${DATE_TAG}" \ -e BASE_IMAGE="${{ matrix.base_image }}" \ @@ -51,6 +52,10 @@ jobs: quay.io/buildah/stable:latest \ bash -c ' set -euo pipefail + # Use the fast kernel overlay driver instead of fuse-overlayfs + # (we are privileged, so this works — and is ~50x faster on + # the millions of small files in the OSTree base) + sed -i "s|^mount_program|#mount_program|" /etc/containers/storage.conf || true mkdir -p /src && tar -xf - -C /src && cd /src buildah build -f Containerfile \ --build-arg BASE_IMAGE="$BASE_IMAGE" \