mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	outputs <none> for colums not found
This commit is contained in:
		@@ -176,7 +176,7 @@ func (s *CustomColumnsPrinter) PrintObj(obj runtime.Object, out io.Writer) error
 | 
			
		||||
	}
 | 
			
		||||
	parsers := make([]*jsonpath.JSONPath, len(s.Columns))
 | 
			
		||||
	for ix := range s.Columns {
 | 
			
		||||
		parsers[ix] = jsonpath.New(fmt.Sprintf("column%d", ix))
 | 
			
		||||
		parsers[ix] = jsonpath.New(fmt.Sprintf("column%d", ix)).AllowMissingKeys(true)
 | 
			
		||||
		if err := parsers[ix].Parse(s.Columns[ix].FieldSpec); err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
@@ -226,10 +226,10 @@ func (s *CustomColumnsPrinter) printOneObject(obj runtime.Object, parsers []*jso
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			return err
 | 
			
		||||
		}
 | 
			
		||||
		if len(values) == 0 || len(values[0]) == 0 {
 | 
			
		||||
			fmt.Fprintf(out, "<none>\t")
 | 
			
		||||
		}
 | 
			
		||||
		valueStrings := []string{}
 | 
			
		||||
		if len(values) == 0 || len(values[0]) == 0 {
 | 
			
		||||
			valueStrings = append(valueStrings, "<none>")
 | 
			
		||||
		}
 | 
			
		||||
		for arrIx := range values {
 | 
			
		||||
			for valIx := range values[arrIx] {
 | 
			
		||||
				valueStrings = append(valueStrings, fmt.Sprintf("%v", values[arrIx][valIx].Interface()))
 | 
			
		||||
 
 | 
			
		||||
@@ -284,6 +284,26 @@ bar
 | 
			
		||||
			obj: &v1.Pod{ObjectMeta: metav1.ObjectMeta{Name: "foo"}, TypeMeta: metav1.TypeMeta{APIVersion: "baz"}},
 | 
			
		||||
			expectedOutput: `NAME      API_VERSION
 | 
			
		||||
foo       baz
 | 
			
		||||
`,
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			columns: []printers.Column{
 | 
			
		||||
				{
 | 
			
		||||
					Header:    "NAME",
 | 
			
		||||
					FieldSpec: "{.metadata.name}",
 | 
			
		||||
				},
 | 
			
		||||
				{
 | 
			
		||||
					Header:    "API_VERSION",
 | 
			
		||||
					FieldSpec: "{.apiVersion}",
 | 
			
		||||
				},
 | 
			
		||||
				{
 | 
			
		||||
					Header:    "NOT_FOUND",
 | 
			
		||||
					FieldSpec: "{.notFound}",
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			obj: &v1.Pod{ObjectMeta: metav1.ObjectMeta{Name: "foo"}, TypeMeta: metav1.TypeMeta{APIVersion: "baz"}},
 | 
			
		||||
			expectedOutput: `NAME      API_VERSION   NOT_FOUND
 | 
			
		||||
foo       baz           <none>
 | 
			
		||||
`,
 | 
			
		||||
		},
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user