Skip to content

Commit

Permalink
build: Disable SLSA Provenance metadata for our images
Browse files Browse the repository at this point in the history
Provenance metadata was newly enabled by default in buildx 0.10.0¹ and
entails switching from older, Docker image manifest lists
(application/vnd.docker.distribution.manifest.list.v2+json) to the
newer, but roughly equivalent-in-concept, OCI image indexes
(application/vnd.oci.image.index.v1+json).²

This switch happened automatically for us between these two builds:

    nextstrain/base:build-20230119T003940Z
    nextstrain/base:build-20230321T203820Z

due to an upgrade of buildx from 0.9.1 → 0.10.0 on the GitHub Actions
runners we use for CI.

Unfortunately, Singularity doesn't support OCI image indexes (i.e.
multi-platform images) until 3.6.0.³  While we'll likely need to require
a newer Singularity version at some point anyway⁴, disabling the
provenance metadata for now should restore compatibility with
Singularity back to its 2.6 series.  We don't need the provenance
anyhow.

¹ <https://github.com/docker/buildx/releases/tag/v0.10.0>

² Provenance metadata is attached as additional entries in the image
  index alongside the normal entries for each platform image.

³ <nextstrain/cli#267>
⁴ <nextstrain/cli#274>
  • Loading branch information
tsibley committed Apr 26, 2023
1 parent e8fe1bd commit a1be778
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions devel/build
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ docker buildx build \
--cache-to type=inline \
--tag "$output_registry/$BUILDER_IMAGE:$tag" \
--push \
--provenance false \
.

docker buildx build \
Expand All @@ -86,4 +87,5 @@ docker buildx build \
--cache-to type=inline \
--tag "$output_registry/$FINAL_IMAGE:$tag" \
--push \
--provenance false \
.

0 comments on commit a1be778

Please sign in to comment.