diff --git a/cmd/helm/install.go b/cmd/helm/install.go index 1ed179d57..df9bf09fb 100644 --- a/cmd/helm/install.go +++ b/cmd/helm/install.go @@ -424,7 +424,22 @@ func locateChartPath(repoURL, name, version string, verify bool, keyring, if err != nil { return "", err } - name = chartURL + + parsedChartURL, err := url.Parse(chartURL) + if err != nil { + return "", err + } + + if parsedChartURL.IsAbs() { + name = chartURL + } else { + parsedRepoUrl, err := url.Parse(repoURL) + if err != nil { + return "", err + } + name = parsedRepoUrl.ResolveReference(parsedChartURL).String() + } + } if _, err := os.Stat(settings.Home.Archive()); os.IsNotExist(err) {