[IMP] Add ARM64 support#37
Merged
Merged
Conversation
david-banon-tecnativa
left a comment
Contributor
There was a problem hiding this comment.
Hi, thanks for putting in the work for this PR it is a welcome change, some comments.
The ultimate goal of this commit is to support building arm64, but I wound up changing a few different things along the way as well. First of all, we build the image for both architectures in one step, but then we have to push it to a local registry in order to pull each architecture and test. Then, once the tests have passed, we re-tag the image or manifest from the local registry and push it to ghcr and Dockerhub (if Dockerhub credentials exist). Not essential to this task, but very beneficial for myself and any future contributors, I have made the whole thing repo agnostic, so anyone can just fork and test, no CI customization required.
Node.js 20 is EOL, so we need to move to actions that support node.js 24 pre-commit/action should also be updated, but it seems the pre-commit team has abandoned this Github action in favor of their https://pre-commit.ci/ service. This will have to wait for another time.
david-banon-tecnativa
approved these changes
Jun 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR changes the CI to build multiarch images; currently AMD64 and ARM64 and ensures tests are run on every architecture using QEMU.
It also makes the CI much more repo agnostic so that forks can run these actions in their own repo and push to their own registry with little to no customization.
Finally, I cleaned up the badges in the readme as several of them were no longer in use and also bumped the versions on the
actions/checkoutandactions/cacheactions in order to stop triggering the Node.js 20 deprecation warningsFor reference:
It appears that an attempt to build for ARM64 has been made before as #17 and #18 and mentioned in #16, but was mixed in with introducing PG 16 and so went by the wayside.