Build a shared multi-arch image build-and-push
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 61
- Forks
- 91
- Avg merge
- 12d 10h
- Merged PRs (30d)
- 1
Description
Six independent implementations of "buildx, QEMU, login to ghcr, push multi-arch" exist across four different major versions of the docker/* actions:
| Repo | setup-buildx | build-push | login |
|---|---|---|---|
| trainer (template-publish-image) | v3 | v5 | — |
| spark-operator | v3 | v6 | v4.2.0 |
| hub | v4 | v7 | v4 |
| notebooks | v4.3.0 | v7.3.0 | v4.6.0 |
| pipelines | — | v7 | — |
trainer already has the right shape - https://github.com/kubeflow/trainer/blob/master/.github/workflows/template-publish-image/action.yaml is a parameterized composite action with a platforms input, driven by a matrix that varies platforms per image (linux/amd64,linux/arm64,linux/ppc64le for the controller, linux/amd64 only for MLX). That is the template to promote.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading trainer’s .github/workflows/template-publish-image/action.yaml, then compare the six buildx, QEMU, login, and push implementations listed in the issue across the Kubeflow repositories. The work is complete when the parameterized multi-architecture build-and-push approach can be shared instead of maintaining those independent implementations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, github-actions
- Domain
- ci-cd, devops, tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100