diff --git a/.forgejo/workflows/build.yml b/.forgejo/workflows/build.yml index 1988258..0254a1e 100644 --- a/.forgejo/workflows/build.yml +++ b/.forgejo/workflows/build.yml @@ -23,16 +23,18 @@ jobs: scripts/check-copyright.sh - run: | apt-get update -qq - apt-get install -qq podman + apt-get install -qq podman skopeo - run: | BASE="$(echo "${{ forgejo.server_url }}" | sed 's@https://@@')" CONTAINER="$BASE/${{ forgejo.repository }}" podman build -t"$CONTAINER:latest" . + # don't use podman push since it fails when pushing large images to forgejo + skopeo copy --src-daemon-host=http://podman:1234 docker-daemon:"$CONTAINER:latest" oci:build:latest - if: contains(fromJSON('["push", "schedule"]'), forgejo.event_name) run: | BASE="$(echo "${{ forgejo.server_url }}" | sed 's@https://@@')" - podman login --password-stdin -u "${{ forgejo.repository_owner }}" "$BASE" <<<"${{ secrets.CONTAINER_PUBLISH_TOKEN }}" + skopeo login --password-stdin -u "${{ forgejo.repository_owner }}" "$BASE" <<<"${{ secrets.CONTAINER_PUBLISH_TOKEN }}" CONTAINER="$BASE/${{ forgejo.repository }}" - podman push "$CONTAINER:latest" "$CONTAINER:${{ forgejo.ref_name }}" - podman push "$CONTAINER:latest" "$CONTAINER:g${{ forgejo.sha }}" - podman push "$CONTAINER:latest" "$CONTAINER:latest" + skopeo copy oci:build:latest "docker://$CONTAINER:${{ forgejo.ref_name }}" + skopeo copy oci:build:latest "docker://$CONTAINER:g${{ forgejo.sha }}" + skopeo copy oci:build:latest "docker://$CONTAINER:latest"