mirror of
https://github.com/helm/helm.git
synced 2026-03-29 05:43:57 -04:00
Merge pull request #3120 from TimDumol/feat/dep-up-error-msg
feat(helm): add better error message to 'dep up'
This commit is contained in:
commit
170cff83c2
2 changed files with 26 additions and 2 deletions
|
|
@ -354,7 +354,7 @@ func (m *Manager) hasAllRepos(deps []*chartutil.Dependency) error {
|
|||
}
|
||||
}
|
||||
if len(missing) > 0 {
|
||||
return fmt.Errorf("no repository definition for %s. Try 'helm repo add'", strings.Join(missing, ", "))
|
||||
return fmt.Errorf("no repository definition for %s. Please add the missing repos via 'helm repo add'", strings.Join(missing, ", "))
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
@ -406,7 +406,24 @@ func (m *Manager) getRepoNames(deps []*chartutil.Dependency) (map[string]string,
|
|||
}
|
||||
}
|
||||
if len(missing) > 0 {
|
||||
return nil, fmt.Errorf("no repository definition for %s. Try 'helm repo add'", strings.Join(missing, ", "))
|
||||
if len(missing) > 0 {
|
||||
errorMessage := fmt.Sprintf("no repository definition for %s. Please add them via 'helm repo add'", strings.Join(missing, ", "))
|
||||
// It is common for people to try to enter "stable" as a repository instead of the actual URL.
|
||||
// For this case, let's give them a suggestion.
|
||||
containsNonURL := false
|
||||
for _, repo := range missing {
|
||||
if !strings.Contains(repo, "//") && !strings.HasPrefix(repo, "@") && !strings.HasPrefix(repo, "alias:") {
|
||||
containsNonURL = true
|
||||
}
|
||||
}
|
||||
if containsNonURL {
|
||||
errorMessage += `
|
||||
Note that repositories must be URLs or aliases. For example, to refer to the stable
|
||||
repository, use "https://kubernetes-charts.storage.googleapis.com/" or "@stable" instead of
|
||||
"stable". Don't forget to add the repo, too ('helm repo add').`
|
||||
}
|
||||
return nil, errors.New(errorMessage)
|
||||
}
|
||||
}
|
||||
return reposMap, nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -106,6 +106,13 @@ func TestGetRepoNames(t *testing.T) {
|
|||
},
|
||||
err: true,
|
||||
},
|
||||
{
|
||||
name: "no repo definition failure -- stable repo",
|
||||
req: []*chartutil.Dependency{
|
||||
{Name: "oedipus-rex", Repository: "stable"},
|
||||
},
|
||||
err: true,
|
||||
},
|
||||
{
|
||||
name: "no repo definition failure",
|
||||
req: []*chartutil.Dependency{
|
||||
|
|
|
|||
Loading…
Reference in a new issue