Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(build): add arm64 support with cross-compilation #3678

Merged
merged 10 commits into from
Mar 3, 2022
Merged

Conversation

gustavovalverde
Copy link
Member

@gustavovalverde gustavovalverde commented Mar 1, 2022

Motivation

To run dockerized containers in M1 and other arm64 processors, we need to cross-compile the Docker image for this platforms. This makes it very hard to test locally, as all builds must be done remotely, or pushing to confirm on GHA.

Note: This is a replacement for #3659, which was wrongly merged:

Depends-On: #3658
Depends-On: #3657

Solution

  • Add QEMU for arm64 platform support
  • Build the docker images with arm64 when pushing to main
  • Do not apply this changes in Tests

Review

@dconnolly @teor2345 or @conradoplg can review this

- Download lightwalletd source code
- Create a new Dockerfile for lightwalletd
- Use lightwalletd binary in Zebra's image
- Create a specific step to build/update lightwalletd
- Add lightwalletd integration test to the test suite
- Remove lightwalletd.yml, as it was harder to control
This package is not available for this platform
@gustavovalverde gustavovalverde added the A-devops Area: Pipelines, CI/CD and Dockerfiles label Mar 1, 2022
@gustavovalverde gustavovalverde self-assigned this Mar 1, 2022
@gustavovalverde gustavovalverde changed the title Feat build arm64 feat(build): add arm64 support with cross-compilation Mar 1, 2022
@gustavovalverde gustavovalverde changed the base branch from main to refactor-dockerfiles March 1, 2022 11:15
teor2345
teor2345 previously approved these changes Mar 2, 2022
Copy link
Contributor

@teor2345 teor2345 left a comment

Choose a reason for hiding this comment

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

Thanks, this looks great!

Feel free to dismiss my comment once you've read it - there's no need to change anything.

Base automatically changed from refactor-dockerfiles to add-lightwalletd-build March 2, 2022 08:10
Base automatically changed from add-lightwalletd-build to main March 2, 2022 09:00
@mergify mergify bot requested a review from a team as a code owner March 2, 2022 09:00
mergify bot added a commit that referenced this pull request Mar 2, 2022
mergify bot added a commit that referenced this pull request Mar 3, 2022
mergify bot added a commit that referenced this pull request Mar 3, 2022
@mergify mergify bot merged commit c176e2a into main Mar 3, 2022
@mergify mergify bot deleted the feat-build-arm64 branch March 3, 2022 00:39
@oxarbitrage oxarbitrage mentioned this pull request Mar 25, 2022
31 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-devops Area: Pipelines, CI/CD and Dockerfiles
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants