feat: enable multi-arch builds with ARM compatibility #4290
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.
What does this PR do?
Enables lllama-stack multi-architecture builds for ARM. The result is an image index, that will point to the image associated with the calling user's architecture.
On Kubernetes for example, with these changes, images are still referred to in the same manner, but will resolve to the architecture that is relevant to the node where it is to be run.
In practice, referring to the usual
docker.io/llamastack/distribution-starter:latestshould resolve to the image with the requesting user's relevant architecture, without any additional configuration on the user's side.Closes #406
Test Plan
Tested container builds on an
amd64architecture host, and deployed the starter distribution image via llama-stack-k8s-operator to anarm64architecture OpenShift cluster. The deployment ran and the operator's e2e test suite completed as expected.Arm64-specific build tests run and pass on GitHub.