pull/3438/merge
Sebastien Plisson 7 years ago committed by GitHub
commit 6ebb0a3ac3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -50,8 +50,8 @@ func runReleaseCases(t *testing.T, tests []releaseCase, rcmd releaseCmd) {
cmd := rcmd(c, &buf)
cmd.ParseFlags(tt.flags)
err := cmd.RunE(cmd, tt.args)
if (err != nil) != tt.err {
t.Errorf("expected error, got '%v'", err)
if (err == nil) && tt.err {
t.Errorf("expected error, got no error")
}
re := regexp.MustCompile(tt.expected)
if !re.Match(buf.Bytes()) {

@ -267,7 +267,7 @@ func (i *installCmd) run() error {
return fmt.Errorf("cannot load requirements: %v", err)
}
res, err := i.client.InstallReleaseFromChart(
resp, err := i.client.InstallReleaseFromChart(
chartRequested,
i.namespace,
helm.ValueOverrides(rawVals),
@ -278,27 +278,37 @@ func (i *installCmd) run() error {
helm.InstallDisableCRDHook(i.disableCRDHook),
helm.InstallTimeout(i.timeout),
helm.InstallWait(i.wait))
if err != nil {
return prettyError(err)
}
rel := res.GetRelease()
// If there is an error while waiting, make a call without waiting to get the release content
if (resp == nil || resp.Release == nil) && i.wait {
if res, e := i.client.ReleaseContent(i.name); e != nil {
fmt.Fprintf(i.out, "Error reading release content: %v", prettyError(e))
} else {
i.printRelease(res.Release)
}
} else {
rel := resp.GetRelease()
if rel == nil {
return nil
}
i.printRelease(rel)
}
if err != nil {
return prettyError(err)
}
// If this is a dry run, we can't display status.
if i.dryRun {
// This is special casing to avoid breaking backward compatibility:
if res.Release.Info.Description != "Dry run complete" {
fmt.Fprintf(os.Stdout, "WARNING: %s\n", res.Release.Info.Description)
if resp.Release.Info.Description != "Dry run complete" {
fmt.Fprintf(os.Stdout, "WARNING: %s\n", resp.Release.Info.Description)
}
return nil
}
// Print the status like status command does
status, err := i.client.ReleaseStatus(rel.Name)
status, err := i.client.ReleaseStatus(i.name)
if err != nil {
return prettyError(err)
}
@ -523,7 +533,7 @@ func readFile(filePath, CertFile, KeyFile, CAFile string) ([]byte, error) {
return ioutil.ReadFile(filePath)
}
getter, err := getterConstructor(filePath, CertFile, KeyFile, CAFile)
getter, err := getterConstructor(filePath, "", "", "")
if err != nil {
return []byte{}, err
}

@ -88,7 +88,7 @@ func newRollbackCmd(c helm.Interface, out io.Writer) *cobra.Command {
}
func (r *rollbackCmd) run() error {
_, err := r.client.RollbackRelease(
resp, err := r.client.RollbackRelease(
r.name,
helm.RollbackDryRun(r.dryRun),
helm.RollbackRecreate(r.recreate),
@ -97,6 +97,24 @@ func (r *rollbackCmd) run() error {
helm.RollbackVersion(r.revision),
helm.RollbackTimeout(r.timeout),
helm.RollbackWait(r.wait))
if settings.Debug {
// If there is an error while waiting, make a call without waiting to get the release content
if (resp == nil || resp.Release == nil) && r.wait {
if res, e := r.client.ReleaseContent(r.name); e != nil {
fmt.Fprintf(r.out, "Error reading release content: %v", prettyError(e))
} else {
printRelease(r.out, res.Release)
}
} else {
rel := resp.GetRelease()
if rel == nil {
return nil
}
printRelease(r.out, rel)
}
}
if err != nil {
return prettyError(err)
}

@ -225,13 +225,23 @@ func (u *upgradeCmd) run() error {
helm.ResetValues(u.resetValues),
helm.ReuseValues(u.reuseValues),
helm.UpgradeWait(u.wait))
if err != nil {
return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err))
}
if settings.Debug {
// If there is an error while waiting, make a call without waiting to get the updated release content
if (resp == nil || resp.Release == nil) && u.wait {
if res, e := u.client.ReleaseContent(u.release); e != nil {
fmt.Fprintf(u.out, "Error reading release content: %v", prettyError(e))
} else {
printRelease(u.out, res.Release)
}
} else {
printRelease(u.out, resp.Release)
}
}
if err != nil {
return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err))
}
fmt.Fprintf(u.out, "Release %q has been upgraded. Happy Helming!\n", u.release)

Loading…
Cancel
Save