-
Notifications
You must be signed in to change notification settings - Fork 243
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
Add multiplatform linux build to CI #1372
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -129,6 +129,8 @@ parse_os_info() { | |
Linux) | ||
if [ "$arch" == "x86_64" ]; then | ||
echo "linux" | ||
elif [ "$arch" == "aarch64" ]; then | ||
echo "linux-aarch64" | ||
else | ||
error "Releases for non x64 architectures are not currently supported." | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thank you for this. Might be worth updating the message as well There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hi @Fydon would you point me which message I need to update? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sure. For macOS there is no error text, so perhaps the same is true for Linux when ARM64 is supported. Otherwise the error message should be something like "Only x64 and ARM64 architectures are currently supported". I believe that x64 is x86_64 and not all architectures ending in 64. |
||
return 1 | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not on a machine right now where I can cleanly check, but does this change the
glibc
dependency for the standard linux build? The Docker system setup right now is built intentionally to support running on an old version ofglibc
.For the ARM build, since we haven't supported it in the past, it's not a big deal to use a more recent version, but for the existing linux build we've been committed to backwards compatibility.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have never done any development in Rust so it would take me a long time to do a good analysis but I can try to make a proposal.
Could QEMU be used in Github actions with another step to build a second linux builder image (
linux/arm64
platform) and then use this image with thedocker run --platform
flag to build volta for both architectures?EDIT : I didn't mention this but it would result in a change to the base image in the Dockerfile (
cern/slc6-base
) as it's anamd64
image, but I don't know why you're using that image so I can't say if that's something possible.