Skip to content
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 a way to manage external tools' binaries #2985

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

joaquimrocha
Copy link
Contributor

@joaquimrocha joaquimrocha commented Mar 13, 2025

Since using external tools like minikube, kubectl, etc. is becoming more and more important, we need a way for the user to actually download/manage those external dependencies, and for plugins to request them too.

This PR adds a new settings section "External Tools" which shows minikube + kubectl for now, whether they have been installed by Headlamp or found in the system and also ways to download/remove them.

It also adds a new example plugin which runs minikube status or informs the user when it needs consent, etc. in its plugin settings.

The code needs to be thoroughly reviewed.

New External Tools settings
New External Tools plugin

@joaquimrocha joaquimrocha requested a review from illume March 13, 2025 18:27
@dosubot dosubot bot added the size:XXL This PR changes 1000+ lines, ignoring generated files. label Mar 13, 2025
@illume
Copy link
Contributor

illume commented Mar 14, 2025

We need to bundle minikube, because air-gapped.

Desktop only.

Signed-off-by: Joaquim Rocha <[email protected]>
External binaries may be needed for some plugins to work, or for the
user's convenience. So this commit adds a way for the plugins to
request such binaries and checks whether the user agrees.

Signed-off-by: Joaquim Rocha <[email protected]>
win: {
x64: {
url: 'https://github.com/kubernetes/minikube/releases/download/{version}/minikube-windows-amd64.exe',
checksum: '25650839f34526ee0f85fd4faa2d5b327f6127caac3de82e1f905adc3aad29df',
Copy link
Contributor

Choose a reason for hiding this comment

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

checksum failed for me, checked in the release page and the checksum for this file is
d4060da824524df744ba85fa91394cabfab15f110c03b1d8b7f1d309116fed15

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Maybe I messed up copying the binaries, or AI got in the way 😛
Please update as appropriate.

@k8s-triage-robot
Copy link

Unknown CLA label state. Rechecking for CLA labels.

Send feedback to sig-contributor-experience at kubernetes/community.

/check-cla
/easycla

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Apr 1, 2025
@k8s-ci-robot
Copy link
Contributor

PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Apr 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size:XXL This PR changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants