add status to profile list
parent
7902d5286d
commit
95717c4793
|
@ -23,10 +23,13 @@ import (
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
"k8s.io/minikube/pkg/minikube/cluster"
|
||||||
"k8s.io/minikube/pkg/minikube/config"
|
"k8s.io/minikube/pkg/minikube/config"
|
||||||
"k8s.io/minikube/pkg/minikube/exit"
|
"k8s.io/minikube/pkg/minikube/exit"
|
||||||
|
"k8s.io/minikube/pkg/minikube/machine"
|
||||||
"k8s.io/minikube/pkg/minikube/out"
|
"k8s.io/minikube/pkg/minikube/out"
|
||||||
|
|
||||||
|
"github.com/golang/glog"
|
||||||
"github.com/olekukonko/tablewriter"
|
"github.com/olekukonko/tablewriter"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
)
|
)
|
||||||
|
@ -58,7 +61,7 @@ var printProfilesTable = func() {
|
||||||
var validData [][]string
|
var validData [][]string
|
||||||
|
|
||||||
table := tablewriter.NewWriter(os.Stdout)
|
table := tablewriter.NewWriter(os.Stdout)
|
||||||
table.SetHeader([]string{"Profile", "VM Driver", "NodeIP", "Node Port", "Kubernetes Version"})
|
table.SetHeader([]string{"Profile", "VM Driver", "NodeIP", "Node Port", "Kubernetes Version", "Status"})
|
||||||
table.SetAutoFormatHeaders(false)
|
table.SetAutoFormatHeaders(false)
|
||||||
table.SetBorders(tablewriter.Border{Left: true, Top: true, Right: true, Bottom: true})
|
table.SetBorders(tablewriter.Border{Left: true, Top: true, Right: true, Bottom: true})
|
||||||
table.SetCenterSeparator("|")
|
table.SetCenterSeparator("|")
|
||||||
|
@ -67,8 +70,18 @@ var printProfilesTable = func() {
|
||||||
if len(validProfiles) == 0 || err != nil {
|
if len(validProfiles) == 0 || err != nil {
|
||||||
exit.UsageT("No minikube profile was found. You can create one using `minikube start`.")
|
exit.UsageT("No minikube profile was found. You can create one using `minikube start`.")
|
||||||
}
|
}
|
||||||
|
api, err := machine.NewAPIClient()
|
||||||
|
if err != nil {
|
||||||
|
glog.Infof("failed to get machine api client %v", err)
|
||||||
|
}
|
||||||
|
defer api.Close()
|
||||||
|
|
||||||
for _, p := range validProfiles {
|
for _, p := range validProfiles {
|
||||||
validData = append(validData, []string{p.Name, p.Config[0].VMDriver, p.Config[0].KubernetesConfig.NodeIP, strconv.Itoa(p.Config[0].KubernetesConfig.NodePort), p.Config[0].KubernetesConfig.KubernetesVersion})
|
p.Status, err = cluster.GetHostStatus(api, p.Name)
|
||||||
|
if err != nil {
|
||||||
|
glog.Infof("error getting host status for %v", err)
|
||||||
|
}
|
||||||
|
validData = append(validData, []string{p.Name, p.Config[0].VMDriver, p.Config[0].KubernetesConfig.NodeIP, strconv.Itoa(p.Config[0].KubernetesConfig.NodePort), p.Config[0].KubernetesConfig.KubernetesVersion, p.Status})
|
||||||
}
|
}
|
||||||
|
|
||||||
table.AppendBulk(validData)
|
table.AppendBulk(validData)
|
||||||
|
@ -93,7 +106,20 @@ var printProfilesTable = func() {
|
||||||
}
|
}
|
||||||
|
|
||||||
var printProfilesJSON = func() {
|
var printProfilesJSON = func() {
|
||||||
|
api, err := machine.NewAPIClient()
|
||||||
|
if err != nil {
|
||||||
|
glog.Infof("failed to get machine api client %v", err)
|
||||||
|
}
|
||||||
|
defer api.Close()
|
||||||
|
|
||||||
validProfiles, invalidProfiles, err := config.ListProfiles()
|
validProfiles, invalidProfiles, err := config.ListProfiles()
|
||||||
|
for _, v := range validProfiles {
|
||||||
|
status, err := cluster.GetHostStatus(api, v.Name)
|
||||||
|
if err != nil {
|
||||||
|
glog.Infof("error getting host status for %v", err)
|
||||||
|
}
|
||||||
|
v.Status = status
|
||||||
|
}
|
||||||
|
|
||||||
var valid []*config.Profile
|
var valid []*config.Profile
|
||||||
var invalid []*config.Profile
|
var invalid []*config.Profile
|
||||||
|
|
3
go.mod
3
go.mod
|
@ -21,14 +21,11 @@ require (
|
||||||
github.com/docker/machine v0.7.1-0.20190718054102-a555e4f7a8f5 // version is 0.7.1 to pin to a555e4f7a8f5
|
github.com/docker/machine v0.7.1-0.20190718054102-a555e4f7a8f5 // version is 0.7.1 to pin to a555e4f7a8f5
|
||||||
github.com/elazarl/goproxy v0.0.0-20190421051319-9d40249d3c2f
|
github.com/elazarl/goproxy v0.0.0-20190421051319-9d40249d3c2f
|
||||||
github.com/elazarl/goproxy/ext v0.0.0-20190421051319-9d40249d3c2f // indirect
|
github.com/elazarl/goproxy/ext v0.0.0-20190421051319-9d40249d3c2f // indirect
|
||||||
github.com/ghodss/yaml v1.0.0 // indirect
|
|
||||||
github.com/go-ole/go-ole v1.2.4 // indirect
|
github.com/go-ole/go-ole v1.2.4 // indirect
|
||||||
github.com/golang-collections/collections v0.0.0-20130729185459-604e922904d3
|
github.com/golang-collections/collections v0.0.0-20130729185459-604e922904d3
|
||||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
|
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
|
||||||
github.com/google/btree v1.0.0 // indirect
|
|
||||||
github.com/google/go-cmp v0.3.0
|
github.com/google/go-cmp v0.3.0
|
||||||
github.com/gorilla/mux v1.7.1 // indirect
|
github.com/gorilla/mux v1.7.1 // indirect
|
||||||
github.com/grpc-ecosystem/grpc-gateway v1.5.0 // indirect
|
|
||||||
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce // indirect
|
github.com/hashicorp/errwrap v0.0.0-20141028054710-7554cd9344ce // indirect
|
||||||
github.com/hashicorp/go-getter v1.4.0
|
github.com/hashicorp/go-getter v1.4.0
|
||||||
github.com/hashicorp/go-multierror v0.0.0-20160811015721-8c5f0ad93604 // indirect
|
github.com/hashicorp/go-multierror v0.0.0-20160811015721-8c5f0ad93604 // indirect
|
||||||
|
|
|
@ -26,6 +26,7 @@ import (
|
||||||
// Profile represents a minikube profile
|
// Profile represents a minikube profile
|
||||||
type Profile struct {
|
type Profile struct {
|
||||||
Name string
|
Name string
|
||||||
|
Status string // running, stopped
|
||||||
Config []*MachineConfig
|
Config []*MachineConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue