cloud_provider installs the amd64 cloud-provider-kind binary on arm64 runners
A pull request for this has already been merged.
- #174 by @RaphaelFakhri — merged
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- github-actions, kubernetes, linux, shell
- Domain
- ci-cd, infrastructure
Research direction
Start by reading kind.sh, where cloud-provider-kind is downloaded and installed; check how the runner architecture is detected and how release archive names are formed. Reproduce on an arm64 Linux runner and inspect the installed binary with file. Done when the action selects the matching release archive for arm64 and the binary runs there.
Written by the indexing model from the issue text.
Description
With cloud_provider: true, kind.sh always downloads cloud-provider-kind_<version>_linux_amd64.tar.gz. On arm64 Linux runners such as ubuntu-24.04-arm, the action installs an x86_64 binary to /usr/local/bin/cloud-provider-kind. The binary cannot run there, so LoadBalancer services never receive an external IP. The action step itself passes because cloud-provider-kind starts in the background and its error only goes to /tmp/cloud-provider.log.
Steps to reproduce
jobs:
test:
runs-on: ubuntu-24.04-arm
steps:
- uses: helm/kind-action@main
with:
cloud_provider: true
- run: |
file /usr/local/bin/cloud-provider-kind
cat /tmp/cloud-provider.log
Expected behavior
The action installs cloud-provider-kind_<version>_linux_arm64.tar.gz, which the cloud-provider-kind release already publishes, and the binary matches the runner architecture.
Actual behavior
file reports ELF 64-bit LSB executable, x86-64, and cloud-provider-kind does not run.
- Dominant language
- Shell
- Stars
- 383
- Forks
- 98
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 3
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
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.
More from helm/kind-action
-
question
Difficulty 4/5 3-5 days Newbie friendliness 25/100
helm/kind-action#105 · 2 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
helm/kind-action#30 · 11 comments · 10 reactions ·
All issues in helm/kind-action
Similar issues
-
S3: friction & debt ws:testing
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
MedakaLang/medaka#5184 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
MadiroGlobalHealth/UVL-EMR#580 ·
Maintainers usually reply within 1 day
-
The Verify with line of the Windows and Linux checksums fails an intact install once a path has two versionsPossibly taken @claude claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
btclib-org/portanode#876 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 84/100
Maintainers usually reply within 1 day