Closed alexellis closed 4 years ago
/add label: good first issue, help wanted
There will be common code between get.go
and `helm.go -> https://github.com/alexellis/arkade/blob/master/pkg/helm/helm.go#L23
Some common code can be extracted here for re-use, but the first implementation would be fine with some duplication making it easier to review.
Today arkade can download a single binary from a release page using a Go template to form the URL.
Helm, however ships as a compressed multi-file archive with the binary inside. We do download this automatically via
arkade install
but the behaviour should be adapted forarkade get
so that we can add helm and similar CLIs i.e.arkade get helm
downloads the helm binary.kubectx now ships as a single-file archive with a single binary inside, this is a simpler case, but still involves more code paths and conditional statements. Until this feature is completed, we can just use the bash variant which is going to exist for a while yet and is not compressed.
Ideally we should support:
Changes will be required in:
https://github.com/alexellis/arkade/blob/master/cmd/get.go
And
https://github.com/alexellis/arkade/blob/master/pkg/get/get.go