Commit bf9dea13 authored by Ville Aikas's avatar Ville Aikas Committed by GitHub

Merge pull request #1122 from vaikas-google/statusafterinstallupdate

print the status after install/upgrade
parents 07bcd338 6b9c9c57
...@@ -18,6 +18,7 @@ package main ...@@ -18,6 +18,7 @@ package main
import ( import (
"bytes" "bytes"
"fmt"
"io" "io"
"math/rand" "math/rand"
"regexp" "regexp"
...@@ -134,7 +135,14 @@ func (c *fakeReleaseClient) DeleteRelease(rlsName string, opts ...helm.DeleteOpt ...@@ -134,7 +135,14 @@ func (c *fakeReleaseClient) DeleteRelease(rlsName string, opts ...helm.DeleteOpt
} }
func (c *fakeReleaseClient) ReleaseStatus(rlsName string, opts ...helm.StatusOption) (*rls.GetReleaseStatusResponse, error) { func (c *fakeReleaseClient) ReleaseStatus(rlsName string, opts ...helm.StatusOption) (*rls.GetReleaseStatusResponse, error) {
return nil, nil if c.rels[0] != nil {
return &rls.GetReleaseStatusResponse{
Name: c.rels[0].Name,
Info: c.rels[0].Info,
Namespace: c.rels[0].Namespace,
}, nil
}
return nil, fmt.Errorf("No such release: %s", rlsName)
} }
func (c *fakeReleaseClient) UpdateRelease(rlsName string, chStr string, opts ...helm.UpdateOption) (*rls.UpdateReleaseResponse, error) { func (c *fakeReleaseClient) UpdateRelease(rlsName string, chStr string, opts ...helm.UpdateOption) (*rls.UpdateReleaseResponse, error) {
......
...@@ -149,8 +149,18 @@ func (i *installCmd) run() error { ...@@ -149,8 +149,18 @@ func (i *installCmd) run() error {
return prettyError(err) return prettyError(err)
} }
i.printRelease(res.GetRelease()) rel := res.GetRelease()
if rel == nil {
return nil
}
i.printRelease(rel)
// Print the status like status command does
status, err := i.client.ReleaseStatus(rel.Name)
if err != nil {
return prettyError(err)
}
PrintStatus(i.out, status)
return nil return nil
} }
......
...@@ -23,6 +23,7 @@ import ( ...@@ -23,6 +23,7 @@ import (
"github.com/spf13/cobra" "github.com/spf13/cobra"
"k8s.io/helm/pkg/helm" "k8s.io/helm/pkg/helm"
"k8s.io/helm/pkg/proto/hapi/services"
"k8s.io/helm/pkg/timeconv" "k8s.io/helm/pkg/timeconv"
) )
...@@ -66,16 +67,24 @@ func (s *statusCmd) run() error { ...@@ -66,16 +67,24 @@ func (s *statusCmd) run() error {
return prettyError(err) return prettyError(err)
} }
fmt.Fprintf(s.out, "Last Deployed: %s\n", timeconv.String(res.Info.LastDeployed)) PrintStatus(s.out, res)
fmt.Fprintf(s.out, "Namespace: %s\n", res.Namespace) return nil
fmt.Fprintf(s.out, "Status: %s\n", res.Info.Status.Code) }
// PrintStatus prints out the status of a release. Shared because also used by
// install / upgrade
func PrintStatus(out io.Writer, res *services.GetReleaseStatusResponse) {
if res.Info.LastDeployed != nil {
fmt.Fprintf(out, "Last Deployed: %s\n", timeconv.String(res.Info.LastDeployed))
}
fmt.Fprintf(out, "Namespace: %s\n", res.Namespace)
fmt.Fprintf(out, "Status: %s\n", res.Info.Status.Code)
if res.Info.Status.Details != nil { if res.Info.Status.Details != nil {
fmt.Fprintf(s.out, "Details: %s\n", res.Info.Status.Details) fmt.Fprintf(out, "Details: %s\n", res.Info.Status.Details)
} }
fmt.Fprintf(s.out, "\n") fmt.Fprintf(out, "\n")
fmt.Fprintf(s.out, "Resources:\n%s\n", res.Info.Status.Resources) fmt.Fprintf(out, "Resources:\n%s\n", res.Info.Status.Resources)
if len(res.Info.Status.Notes) > 0 { if len(res.Info.Status.Notes) > 0 {
fmt.Fprintf(s.out, "Notes:\n%s\n", res.Info.Status.Notes) fmt.Fprintf(out, "Notes:\n%s\n", res.Info.Status.Notes)
} }
return nil
} }
...@@ -131,6 +131,13 @@ func (u *upgradeCmd) run() error { ...@@ -131,6 +131,13 @@ func (u *upgradeCmd) run() error {
success := u.release + " has been upgraded. Happy Helming!\n" success := u.release + " has been upgraded. Happy Helming!\n"
fmt.Fprintf(u.out, success) fmt.Fprintf(u.out, success)
// Print the status like status command does
status, err := u.client.ReleaseStatus(u.release)
if err != nil {
return prettyError(err)
}
PrintStatus(u.out, status)
return nil return nil
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment