Skip to content

Conversation

@rhdedgar
Copy link
Contributor

@rhdedgar rhdedgar commented Dec 3, 2025

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.

                                              --> quay.io/<user>/distribution-starter/<version>-linux-arm64
quay.io/<user>/distribution-starter/<version>-|
                                              --> quay.io/<user>/distribution-starter/<version>-linux-amd64

In practice, referring to the usual docker.io/llamastack/distribution-starter:latest should 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 amd64 architecture host, and deployed the starter distribution image via llama-stack-k8s-operator to an arm64 architecture OpenShift cluster. The deployment ran and the operator's e2e test suite completed as expected.

Arm64-specific build tests run and pass on GitHub.

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Meta Open Source bot. label Dec 3, 2025
Copy link
Contributor

@ashwinb ashwinb left a comment

Choose a reason for hiding this comment

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

Thanks for doing this! ❤️

Copy link
Contributor

@ashwinb ashwinb left a comment

Choose a reason for hiding this comment

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

looks good to me. @leseb @cdoern you want to have one look?

Copy link
Collaborator

@leseb leseb left a comment

Choose a reason for hiding this comment

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

This looks good thanks! I believe the next step is to publish a build and take inspiration from .github/workflows/build-distributions.yml in the ops repo.

Copy link
Collaborator

@leseb leseb left a comment

Choose a reason for hiding this comment

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

The build never ran. https://github.com/llamastack/llama-stack/actions/runs/20277364473 there is an issue with the matrix.

@rhdedgar
Copy link
Contributor Author

Good catch, I see the issue now. I've updated this PR with a new commit. The tests have passed again, and the build now completes: https://github.com/llamastack/llama-stack/actions/runs/20313646963.

@rhdedgar
Copy link
Contributor Author

Might need a maintainer to remove that requested change label unless we should wait until everyone is back after New Year's before merging.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
Signed-off-by: Doug Edgar <dedgar@redhat.com>
Signed-off-by: Doug Edgar <dedgar@redhat.com>
Copy link
Collaborator

@leseb leseb left a comment

Choose a reason for hiding this comment

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

As a follow-up, can we do a build for starter distro on UBI arm64? Thanks!

@leseb leseb merged commit dadcd22 into llamastack:main Jan 6, 2026
57 checks passed
@rhdedgar
Copy link
Contributor Author

rhdedgar commented Jan 6, 2026

Thank you! Sure, I'll look into that next.

leseb pushed a commit that referenced this pull request Jan 9, 2026
# What does this PR do?
Adds the new workflow `build-starter-ubi9-arm64-container` which
validates building the starter distribution on UBI9 using ARM64
architecture.

Follows up on a comment in PR #4290, which added multi-arch ARM64 build
support.

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

@leseb for awareness

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
leseb pushed a commit that referenced this pull request Jan 12, 2026
# What does this PR do?
Follows up on #4474 and #4290, making the ARM64 builds only run on a
nightly cadence, instead of on every PR. This was done because the ARM64
builds take significantly longer to complete than the others.

@leseb for awareness

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
mergify bot pushed a commit that referenced this pull request Jan 12, 2026
# What does this PR do?
Follows up on #4474 and #4290, making the ARM64 builds only run on a
nightly cadence, instead of on every PR. This was done because the ARM64
builds take significantly longer to complete than the others.

@leseb for awareness

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
(cherry picked from commit a5c44a0)

# Conflicts:
#	.github/workflows/providers-build.yml
@codefromthecrypt
Copy link
Contributor

is this build intentionally not used in releases?

docker manifest inspect llamastack/distribution-starter:0.4.1 is single arch, still.

I don't see arm64 in the 0.4.1 maybe because .github/workflows/build-distributions.yml seems to hard-code --platform linux/amd64 https://github.com/llamastack/llama-stack/blob/main/.github/workflows/build-distributions.yml#L119

I got excited but I guess this PR was about making it possible, but not running the build? Do we need another issue to run the build on release?

franciscojavierarceo pushed a commit to franciscojavierarceo/llama-stack that referenced this pull request Jan 16, 2026
# What does this PR do?
Adds the new workflow `build-starter-ubi9-arm64-container` which
validates building the starter distribution on UBI9 using ARM64
architecture.

Follows up on a comment in PR llamastack#4290, which added multi-arch ARM64 build
support.

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

@leseb for awareness

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
franciscojavierarceo pushed a commit to franciscojavierarceo/llama-stack that referenced this pull request Jan 16, 2026
# What does this PR do?
Follows up on llamastack#4474 and llamastack#4290, making the ARM64 builds only run on a
nightly cadence, instead of on every PR. This was done because the ARM64
builds take significantly longer to complete than the others.

@leseb for awareness

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
@rhdedgar
Copy link
Contributor Author

is this build intentionally not used in releases?

docker manifest inspect llamastack/distribution-starter:0.4.1 is single arch, still.

I don't see arm64 in the 0.4.1 maybe because .github/workflows/build-distributions.yml seems to hard-code --platform linux/amd64 https://github.com/llamastack/llama-stack/blob/main/.github/workflows/build-distributions.yml#L119

I got excited but I guess this PR was about making it possible, but not running the build? Do we need another issue to run the build on release?

@codefromthecrypt Hi, I opened llamastack/llama-stack-ops#44 to address this. I'll see about getting reviews and branch access sorted out next.

JayDi11a pushed a commit to JayDi11a/llama-stack that referenced this pull request Jan 23, 2026
# What does this PR do?
Adds the new workflow `build-starter-ubi9-arm64-container` which
validates building the starter distribution on UBI9 using ARM64
architecture.

Follows up on a comment in PR llamastack#4290, which added multi-arch ARM64 build
support.

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

@leseb for awareness

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
JayDi11a pushed a commit to JayDi11a/llama-stack that referenced this pull request Jan 23, 2026
# What does this PR do?
Follows up on llamastack#4474 and llamastack#4290, making the ARM64 builds only run on a
nightly cadence, instead of on every PR. This was done because the ARM64
builds take significantly longer to complete than the others.

@leseb for awareness

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

## Test Plan
Commit hooks pass and builds complete without error on a PR in my fork.

Signed-off-by: Doug Edgar <dedgar@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Meta Open Source bot.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upload arm64 docker images where relevant

4 participants