aslafy-z / helm-git

Helm Plugin - Install Helm Charts strait from Git repositories
Apache License 2.0
287 stars 46 forks source link

Bug: git+ssh is broken since 11.0 #246

Closed NamelessHH closed 1 year ago

NamelessHH commented 1 year ago

Since version 0.11.0 git ssh addresses with a path to charts does not work correctly.

Helm version: 3.8.1 helm-git version: 0.11.1-0.14.3 Git version: 2.34.1

Steps To Reproduce

  1. run a basic helm add repo with a git+ssh with a path.
  2. The example one git+ssh://git@github.com/jetstack/cert-manager@deploy/charts?ref=v0.6.2 will do
  3. helm repo add test-cert-manager git+ssh://git@github.com/jetstack/cert-manager@deploy/charts?ref=v0.6.2

Link to chart repository:

The current behavior

Error in plugin 'helm-git': No files have been checked out. Check your Git ref (master) and path (github.com/jetstack/cert-manager@deploy/charts).
Error: looks like "git+ssh://git@github.com/jetstack/cert-manager@deploy/charts?ref=master" is not a valid chart repository or cannot be reached: plugin "helm-git" exited with error

The expected behavior

The chart is added.

Additional information

I'm pretty sure that this line is the issue

the problem is that this parser catches the first @ symbol in a git+ssh address.

NamelessHH commented 1 year ago

So I don't know if you want to keep this open but I was apparently using busybox sed instead of gnu sed. and that was the issue. I'd probably just add it to the documentation. when I installed gnu sed it worked correctly.

aslafy-z commented 1 year ago

Thanks for reporting! I'd like this project to work with busybox, I'm sure we can do something for it. PRs are welcome!

aslafy-z commented 1 year ago

This issue should be fixed by https://github.com/aslafy-z/helm-git/releases/tag/v0.15.1, can you please have a try?

helm plugin install https://github.com/aslafy-z/helm-git --version 0.15.1

Feel free to re-open this issue if your issue is still present.

aslafy-z commented 1 year ago

:tada: This issue has been resolved in version 0.15.1 :tada:

The release is available on GitHub release

Your semantic-release bot :package::rocket: