mirror of https://github.com/k3s-io/k3s
move columns into wide option to make result more readable
parent
ad36fc8ba5
commit
53d4b15b87
|
@ -363,8 +363,49 @@ func ExamplePrintReplicationControllerWithNamespace() {
|
|||
fmt.Printf("Unexpected error: %v", err)
|
||||
}
|
||||
// Output:
|
||||
// NAMESPACE CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS AGE
|
||||
// beep foo foo someimage foo=bar 1 10y
|
||||
// NAMESPACE CONTROLLER REPLICAS AGE
|
||||
// beep foo 1 10y
|
||||
}
|
||||
|
||||
func ExamplePrintReplicationControllerWithWide() {
|
||||
f, tf, codec := NewAPIFactory()
|
||||
tf.Printer = kubectl.NewHumanReadablePrinter(false, false, true, false, false, false, []string{})
|
||||
tf.Client = &fake.RESTClient{
|
||||
Codec: codec,
|
||||
Client: nil,
|
||||
}
|
||||
cmd := NewCmdRun(f, os.Stdin, os.Stdout, os.Stderr)
|
||||
ctrl := &api.ReplicationController{
|
||||
ObjectMeta: api.ObjectMeta{
|
||||
Name: "foo",
|
||||
Labels: map[string]string{"foo": "bar"},
|
||||
CreationTimestamp: unversioned.Time{Time: time.Now().AddDate(-10, 0, 0)},
|
||||
},
|
||||
Spec: api.ReplicationControllerSpec{
|
||||
Replicas: 1,
|
||||
Selector: map[string]string{"foo": "bar"},
|
||||
Template: &api.PodTemplateSpec{
|
||||
ObjectMeta: api.ObjectMeta{
|
||||
Labels: map[string]string{"foo": "bar"},
|
||||
},
|
||||
Spec: api.PodSpec{
|
||||
Containers: []api.Container{
|
||||
{
|
||||
Name: "foo",
|
||||
Image: "someimage",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
err := f.PrintObject(cmd, ctrl, os.Stdout)
|
||||
if err != nil {
|
||||
fmt.Printf("Unexpected error: %v", err)
|
||||
}
|
||||
// Output:
|
||||
// CONTROLLER REPLICAS AGE CONTAINER(S) IMAGE(S) SELECTOR
|
||||
// foo 1 10y foo someimage foo=bar
|
||||
}
|
||||
|
||||
func ExamplePrintPodWithWideFormat() {
|
||||
|
@ -635,9 +676,9 @@ func ExamplePrintServiceWithNamespacesAndLabels() {
|
|||
fmt.Printf("Unexpected error: %v", err)
|
||||
}
|
||||
// Output:
|
||||
// |NAMESPACE NAME CLUSTER-IP EXTERNAL-IP PORT(S) SELECTOR AGE L1|
|
||||
// |ns1 svc1 10.1.1.1 unknown 53/UDP,53/TCP s=magic 10y value|
|
||||
// |ns2 svc2 10.1.1.2 unknown 80/TCP,8080/TCP s=kazam 10y dolla-bill-yall|
|
||||
// |NAMESPACE NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE L1|
|
||||
// |ns1 svc1 10.1.1.1 unknown 53/UDP,53/TCP 10y value|
|
||||
// |ns2 svc2 10.1.1.2 unknown 80/TCP,8080/TCP 10y dolla-bill-yall|
|
||||
// ||
|
||||
}
|
||||
|
||||
|
|
|
@ -396,14 +396,14 @@ func (h *HumanReadablePrinter) HandledResources() []string {
|
|||
// pkg/kubectl/cmd/get.go to reflect the new resource type.
|
||||
var podColumns = []string{"NAME", "READY", "STATUS", "RESTARTS", "AGE"}
|
||||
var podTemplateColumns = []string{"TEMPLATE", "CONTAINER(S)", "IMAGE(S)", "PODLABELS"}
|
||||
var replicationControllerColumns = []string{"CONTROLLER", "CONTAINER(S)", "IMAGE(S)", "SELECTOR", "REPLICAS", "AGE"}
|
||||
var replicaSetColumns = []string{"CONTROLLER", "CONTAINER(S)", "IMAGE(S)", "SELECTOR", "REPLICAS", "AGE"}
|
||||
var jobColumns = []string{"JOB", "CONTAINER(S)", "IMAGE(S)", "SELECTOR", "SUCCESSFUL"}
|
||||
var serviceColumns = []string{"NAME", "CLUSTER-IP", "EXTERNAL-IP", "PORT(S)", "SELECTOR", "AGE"}
|
||||
var replicationControllerColumns = []string{"CONTROLLER", "REPLICAS", "AGE"}
|
||||
var replicaSetColumns = []string{"CONTROLLER", "REPLICAS", "AGE"}
|
||||
var jobColumns = []string{"JOB", "SUCCESSFUL"}
|
||||
var serviceColumns = []string{"NAME", "CLUSTER-IP", "EXTERNAL-IP", "PORT(S)", "AGE"}
|
||||
var ingressColumns = []string{"NAME", "RULE", "BACKEND", "ADDRESS"}
|
||||
var endpointColumns = []string{"NAME", "ENDPOINTS", "AGE"}
|
||||
var nodeColumns = []string{"NAME", "STATUS", "AGE"}
|
||||
var daemonSetColumns = []string{"NAME", "CONTAINER(S)", "IMAGE(S)", "SELECTOR", "NODE-SELECTOR"}
|
||||
var daemonSetColumns = []string{"NAME", "NODE-SELECTOR"}
|
||||
var eventColumns = []string{"FIRSTSEEN", "LASTSEEN", "COUNT", "NAME", "KIND", "SUBOBJECT", "TYPE", "REASON", "SOURCE", "MESSAGE"}
|
||||
var limitRangeColumns = []string{"NAME", "AGE"}
|
||||
var resourceQuotaColumns = []string{"NAME", "AGE"}
|
||||
|
@ -703,16 +703,22 @@ func printReplicationController(controller *api.ReplicationController, w io.Writ
|
|||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%d\t%s",
|
||||
if _, err := fmt.Fprintf(w, "%s\t%d\t%s",
|
||||
name,
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
labels.FormatLabels(controller.Spec.Selector),
|
||||
controller.Spec.Replicas,
|
||||
translateTimestamp(controller.CreationTimestamp),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if options.Wide {
|
||||
if _, err := fmt.Fprintf(w, "\t%s\t%s\t%s",
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
labels.FormatLabels(controller.Spec.Selector),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprint(w, appendLabels(controller.Labels, options.ColumnLabels)); err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -760,16 +766,22 @@ func printReplicaSet(rs *extensions.ReplicaSet, w io.Writer, options PrintOption
|
|||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%d\t%s",
|
||||
if _, err := fmt.Fprintf(w, "%s\t%d\t%s",
|
||||
name,
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
unversioned.FormatLabelSelector(rs.Spec.Selector),
|
||||
rs.Spec.Replicas,
|
||||
translateTimestamp(rs.CreationTimestamp),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if options.Wide {
|
||||
if _, err := fmt.Fprintf(w, "\t%s\t%s\t%s",
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
unversioned.FormatLabelSelector(rs.Spec.Selector),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprint(w, appendLabels(rs.Labels, options.ColumnLabels)); err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -818,15 +830,21 @@ func printJob(job *extensions.Job, w io.Writer, options PrintOptions) error {
|
|||
}
|
||||
|
||||
selector, _ := unversioned.LabelSelectorAsSelector(job.Spec.Selector)
|
||||
_, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%d",
|
||||
_, err := fmt.Fprintf(w, "%s\t%d",
|
||||
name,
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
selector.String(),
|
||||
job.Status.Succeeded)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if options.Wide {
|
||||
if _, err := fmt.Fprintf(w, "\t%s\t%s\t%s",
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
selector.String(),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprint(w, appendLabels(job.Labels, options.ColumnLabels)); err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -916,16 +934,20 @@ func printService(svc *api.Service, w io.Writer, options PrintOptions) error {
|
|||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%s\t%s",
|
||||
if _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%s",
|
||||
name,
|
||||
internalIP,
|
||||
externalIP,
|
||||
makePortString(svc.Spec.Ports),
|
||||
labels.FormatLabels(svc.Spec.Selector),
|
||||
translateTimestamp(svc.CreationTimestamp),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if options.Wide {
|
||||
if _, err := fmt.Fprintf(w, "\t%s", labels.FormatLabels(svc.Spec.Selector)); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprint(w, appendLabels(svc.Labels, options.ColumnLabels)); err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -1031,15 +1053,21 @@ func printDaemonSet(ds *extensions.DaemonSet, w io.Writer, options PrintOptions)
|
|||
// this shouldn't happen if LabelSelector passed validation
|
||||
return err
|
||||
}
|
||||
if _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%s",
|
||||
if _, err := fmt.Fprintf(w, "%s\t%s",
|
||||
name,
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
selector,
|
||||
labels.FormatLabels(ds.Spec.Template.Spec.NodeSelector),
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
if options.Wide {
|
||||
if _, err := fmt.Fprintf(w, "\t%s\t%s\t%s",
|
||||
firstContainer.Name,
|
||||
firstContainer.Image,
|
||||
selector,
|
||||
); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if _, err := fmt.Fprint(w, appendLabels(ds.Labels, options.ColumnLabels)); err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -1684,6 +1712,21 @@ func formatWideHeaders(wide bool, t reflect.Type) []string {
|
|||
if t.String() == "*api.Pod" || t.String() == "*api.PodList" {
|
||||
return []string{"NODE"}
|
||||
}
|
||||
if t.String() == "*api.ReplicationController" || t.String() == "*api.ReplicationControllerList" {
|
||||
return []string{"CONTAINER(S)", "IMAGE(S)", "SELECTOR"}
|
||||
}
|
||||
if t.String() == "*extensions.Job" || t.String() == "*extensions.JobList" {
|
||||
return []string{"CONTAINER(S)", "IMAGE(S)", "SELECTOR"}
|
||||
}
|
||||
if t.String() == "*api.Service" || t.String() == "*api.ServiceList" {
|
||||
return []string{"SELECTOR"}
|
||||
}
|
||||
if t.String() == "*extensions.DaemonSet" || t.String() == "*extensions.DaemonSetList" {
|
||||
return []string{"CONTAINER(S)", "IMAGE(S)", "SELECTOR"}
|
||||
}
|
||||
if t.String() == "*extensions.ReplicaSet" || t.String() == "*extensions.ReplicaSetList" {
|
||||
return []string{"CONTAINER(S)", "IMAGE(S)", "SELECTOR"}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue