Skip to content

Conversation

@dlachaume
Copy link
Collaborator

@dlachaume dlachaume commented Jul 1, 2025

Content

This PR includes CI updates to:

  • build Linux arm64 binaries using the ubuntu-22.04-arm runner
  • run tests on arm64 binaries by adding the ubuntu-24.04-arm runner in the test job matrix
  • add ubuntu-24.04-arm to the test matrix of the Mithril Client multi-platform test workflow
  • publish multi-arch Docker images for mithril-aggregator, mithril-signer, mithril-client, and mithril-relay (leveraging QEMU and Buildx to support both amd64 and arm64 platforms)
  • add a platform support matrix to the release notes
  • disable the tools utxo-hd snapshot-converter CLI command and hide post-download guidance when running on Linux ARM

Details on build and CI execution times are available here.

Example of a multi-arch Docker image for mithril-client is available here.

Pre-submit checklist

  • Branch
    • Tests are provided (if possible)
    • Crates versions are updated (if relevant)
    • CHANGELOG file is updated (if relevant)
    • Commit sequence broadly makes sense
    • Key commits have useful messages
  • PR
    • All check jobs of the CI have succeeded
    • Self-reviewed the diff
    • Useful pull request description
    • Reviewer requested
  • Documentation
    • Update README file (if relevant)
    • Update documentation website (if relevant)
    • Add dev blog post (if relevant)
    • Add ADR blog post or Dev ADR entry (if relevant)
    • No new TODOs introduced

Issue(s)

Closes #2178

@dlachaume dlachaume self-assigned this Jul 1, 2025
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from d640cf8 to 46df3f7 Compare July 1, 2025 17:07
@dlachaume dlachaume changed the title ci: build Linux ARM binaries in the CI ci: add Linux arm64 support Jul 1, 2025
@github-actions
Copy link

github-actions bot commented Jul 1, 2025

Test Results

    4 files  +    1    154 suites  +49   21m 9s ⏱️ + 3m 56s
2 071 tests ±    0  2 071 ✅ ±    0  0 💤 ±0  0 ❌ ±0 
6 356 runs  +2 071  6 356 ✅ +2 071  0 💤 ±0  0 ❌ ±0 

Results for commit 8ec1c79. ± Comparison against base commit 5f041dd.

♻️ This comment has been updated with latest results.

@dlachaume dlachaume temporarily deployed to testing-preview July 1, 2025 17:30 — with GitHub Actions Inactive
@dlachaume dlachaume temporarily deployed to testing-preview July 1, 2025 18:09 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from e2f42f4 to 1409162 Compare July 1, 2025 18:13
@dlachaume dlachaume temporarily deployed to testing-preview July 1, 2025 18:32 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch 2 times, most recently from 31e21b3 to d272964 Compare July 1, 2025 18:50
@dlachaume dlachaume temporarily deployed to testing-preview July 1, 2025 19:09 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from d272964 to fa4d8f6 Compare July 2, 2025 06:28
@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 06:47 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from fa4d8f6 to 3567baf Compare July 2, 2025 06:59
@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 07:18 — with GitHub Actions Inactive
@dlachaume dlachaume marked this pull request as ready for review July 2, 2025 07:34
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from 3567baf to 8fb88fd Compare July 2, 2025 10:21
@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 10:40 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from 8fb88fd to f01f37a Compare July 2, 2025 12:53
@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 13:11 — with GitHub Actions Inactive
Copy link
Member

@jpraynaud jpraynaud left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍

@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from f01f37a to 66103dd Compare July 2, 2025 14:18
dlachaume added 5 commits July 2, 2025 16:27
…stable-release` and `create-pre-release` jobs
The `docker-mithril` job builds and pushes multi-platform Docker images
(`linux/amd64`, `linux/arm64`) using Docker Buildx and QEMU for emulation.

Each binary is injected per architecture using `$TARGETARCH` at build time.

Disable `provenance` to avoid "unknown/unknown" issue:
Known behavior, provenance generation triggers a multi-platform image index,
which causes the image to appear as "unknown/unknown".
Disabling it ensures that only a single manifest is generated.
@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 14:36 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from 66103dd to 068d545 Compare July 2, 2025 14:37
Copy link
Collaborator

@Alenar Alenar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 14:54 — with GitHub Actions Inactive
@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from 068d545 to 0b660f4 Compare July 2, 2025 14:59
@dlachaume dlachaume temporarily deployed to testing-preview July 2, 2025 15:16 — with GitHub Actions Inactive
Copy link
Collaborator

@turmelclem turmelclem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM ✨

@dlachaume dlachaume force-pushed the dlachaume/2178/build-linux-arm-in-ci branch from 0b660f4 to 8ec1c79 Compare July 3, 2025 08:01
@dlachaume dlachaume temporarily deployed to testing-preview July 3, 2025 08:19 — with GitHub Actions Inactive
@dlachaume dlachaume merged commit a6d5487 into main Jul 3, 2025
41 of 43 checks passed
@dlachaume dlachaume deleted the dlachaume/2178/build-linux-arm-in-ci branch July 3, 2025 08:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build Linux ARM binaries in the CI

5 participants