little-angry-clouds / kubernetes-binaries-managers

Kubernetes related binaries manager.
GNU General Public License v3.0
101 stars 11 forks source link

Segfault in helm-wrapper #29

Closed alexanderjohn closed 2 years ago

alexanderjohn commented 2 years ago

I followed the manual installation instructions and was able to install 3.7.1 and 2.16.1

When I run helm, Incorrect helm commands execute with no issue:

$ helm blahblah
Error: unknown command "blahblah" for "helm"
Run 'helm --help' for usage.

However, every 'successful' command ends with the following:

$ helm
The Kubernetes package manager
# ...
# ...
# ...
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x4aad4f]

goroutine 1 [running]:
github.com/little-angry-clouds/kubernetes-binaries-managers/internal/wrapper.Wrapper(0x4e810e, 0x4)
    /home/runner/work/kubernetes-binaries-managers/kubernetes-binaries-managers/internal/wrapper/main.go:43 +0x4df
main.main()
    /home/runner/work/kubernetes-binaries-managers/kubernetes-binaries-managers/cmd/helm-wrapper/main.go:10 +0x36
alexppg commented 2 years ago

Could you please add the output of the command helm version?

alexppg commented 2 years ago

Hi, I'm gonna close this, if you still have this issue, feel free to reopen it.

g4mjamesc commented 2 years ago

I am getting this issue also.

 helm version
version.BuildInfo{Version:"v3.9.0", GitCommit:"7ceeda6c585217a19a1131663d8cd1f7d641b2a7", GitTreeState:"clean", GoVersion:"go1.17.5"}
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x4aad4f]

goroutine 1 [running]:
github.com/little-angry-clouds/kubernetes-binaries-managers/internal/wrapper.Wrapper(0x4e810e, 0x4)
    /home/runner/work/kubernetes-binaries-managers/kubernetes-binaries-managers/internal/wrapper/main.go:43 +0x4df
main.main()
    /home/runner/work/kubernetes-binaries-managers/kubernetes-binaries-managers/cmd/helm-wrapper/main.go:10 +0x36
alexppg commented 2 years ago

Sorry too hear it. Could you please pass the next information:

g4mjamesc commented 2 years ago

HI

 helmenv version
Error: unknown command "version" for "helmenv"
Run 'helmenv --help' for usage.
unknown command "version" for "helmenv"
helmenv -h
Helm version manager

Usage:
  helmenv [command]

Available Commands:
  help        Help about any command
  install     Install helm binary
  list        Lists local and remote versions
  uninstall   Uninstall helm binary
  use         Set the default version to use

Flags:
  -h, --help   help for helmenv

Ubuntu 22.04 x86_64

alexppg commented 2 years ago

If helmenv doesn't have the version parameter, it should mean that you're not using the latest version. Could you please upgrade?

g4mjamesc commented 2 years ago

HI

i think the problem is the readme is out of date. I am personally guilty of copying/pasting without reading.

wget https://github.com/little-angry-clouds/kubernetes-binaries-managers/releases/download/0.0.4/helmenv-linux-amd64.tar.gz
tar xzf helmenv-linux-amd64.tar.gz
mv helmenv-linux-amd64 ~/.bin/helmenv
mv helm-wrapper-linux-amd64 ~/.bin/helm

if i download a later version e.g 1.0.0 the files are completely different., i get the below 3 binaries, instead of a helmenv-linux-amd64 and a helm-wrapper-linux-amd64, so the instructions are abit out of date. Im assuming these 3 binaries still go into ~./bin./* but not sure

helm-linux-amd64
kubectl-linux-amd64 oc-linux-amd64

alexppg commented 2 years ago

That makes sense, I changed the way of the binaries are compressed and I forgot to update the READMEs.

The binaries are now all packaged in a combination of OS and ARCH, but it has both the wrapper and the binary manager. So you'll have to move both helmenv and helm-wrapper (possibly changing the name helm-wrapper for helm for convenience) to your PATH and that should be it.

This is how it's now packaged:

wget https://github.com/little-angry-clouds/kubernetes-binaries-managers/releases/download/v1.0.0/kubernetes-binaries-managers_1.0.0_linux_amd64.tar.gz
unp kubernetes-binaries-managers_1.0.0_linux_amd64.tar.gz
tree .
.
├── CHANGELOG.md
├── helm-linux-amd64
│   ├── helmenv
│   └── helm-wrapper
├── kubectl-linux-amd64
│   ├── kbenv
│   └── kubectl-wrapper
├── kubernetes-binaries-managers_1.0.0_linux_amd64.tar.gz
├── LICENSE
├── oc-linux-amd64
│   ├── ocenv
│   └── oc-wrapper
└── README.md
g4mjamesc commented 2 years ago

just to let you know, this worked.

alexppg commented 2 years ago

Awesome. I'll close this issue when I update the README.

alexppg commented 2 years ago

Done.