output

package
v1.19.13 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2021 License: Apache-2.0 Imports: 7 Imported by: 6

Documentation

Index

Constants

View Source
const TextOutput = "text"

TextOutput describes the plain text output

Variables

This section is empty.

Functions

This section is empty.

Types

type PrintFlags

type PrintFlags struct {
	// JSONYamlPrintFlags provides default flags necessary for json/yaml printing.
	JSONYamlPrintFlags *genericclioptions.JSONYamlPrintFlags
	// KubeTemplatePrintFlags composes print flags that provide both a JSONPath and a go-template printer.
	KubeTemplatePrintFlags *genericclioptions.KubeTemplatePrintFlags
	// JSONYamlPrintFlags provides default flags necessary for kubeadm text printing.
	TextPrintFlags TextPrintFlags
	// TypeSetterPrinter is an implementation of ResourcePrinter that wraps another printer with types set on the objects
	TypeSetterPrinter *printers.TypeSetterPrinter
	// OutputFormat contains currently set output format
	OutputFormat *string
}

PrintFlags composes common printer flag structs used across kubeadm commands, and provides a method of retrieving a known printer based on flag values provided.

func NewOutputFlags

func NewOutputFlags(textPrintFlags TextPrintFlags) *PrintFlags

NewOutputFlags creates new KubeadmOutputFlags

func (*PrintFlags) AddFlags

func (pf *PrintFlags) AddFlags(cmd *cobra.Command)

AddFlags receives a *cobra.Command reference and binds flags related to Kubeadm printing to it

func (*PrintFlags) AllowedFormats

func (pf *PrintFlags) AllowedFormats() []string

AllowedFormats returns list of allowed output formats

func (*PrintFlags) ToPrinter

func (pf *PrintFlags) ToPrinter() (Printer, error)

ToPrinter receives an outputFormat and returns a printer capable of handling format printing. Returns error if the specified outputFormat does not match supported formats.

func (*PrintFlags) WithDefaultOutput

func (pf *PrintFlags) WithDefaultOutput(outputFormat string) *PrintFlags

WithDefaultOutput sets a default output format if one is not provided through a flag value

func (*PrintFlags) WithTypeSetter

func (pf *PrintFlags) WithTypeSetter(scheme *runtime.Scheme) *PrintFlags

WithTypeSetter sets a wrapper than will surround the returned printer with a printer to type resources

type Printer

type Printer interface {
	PrintObj(obj runtime.Object, writer io.Writer) error
	Fprintf(writer io.Writer, format string, args ...interface{}) (n int, err error)
	Printf(format string, args ...interface{}) (n int, err error)
}

Printer is a common printing interface in Kubeadm

func NewResourcePrinterWrapper

func NewResourcePrinterWrapper(resourcePrinter printers.ResourcePrinter, err error) (Printer, error)

NewResourcePrinterWrapper creates new ResourcePrinter object

type ResourcePrinterWrapper

type ResourcePrinterWrapper struct {
	Printer printers.ResourcePrinter
}

ResourcePrinterWrapper wraps ResourcePrinter and implements Printer interface

func (*ResourcePrinterWrapper) Fprintf

func (rpw *ResourcePrinterWrapper) Fprintf(writer io.Writer, format string, args ...interface{}) (n int, err error)

Fprintf is an empty method to satisfy Printer interface and silent info printing for structured output This method is usually redefined for the text output

func (*ResourcePrinterWrapper) PrintObj

func (rpw *ResourcePrinterWrapper) PrintObj(obj runtime.Object, writer io.Writer) error

PrintObj is an implementation of ResourcePrinter.PrintObj that calls underlying printer API

func (*ResourcePrinterWrapper) Printf

func (rpw *ResourcePrinterWrapper) Printf(format string, args ...interface{}) (n int, err error)

Printf is an empty method to satisfy Printer interface and silent info printing for structured output This method is usually redefined for the text output

type TextPrintFlags

type TextPrintFlags interface {
	ToPrinter(outputFormat string) (Printer, error)
}

TextPrintFlags is an interface to handle custom text output

type TextPrinter

type TextPrinter struct {
}

TextPrinter implements Printer interface for generic text output

func (*TextPrinter) Fprintf

func (tp *TextPrinter) Fprintf(writer io.Writer, format string, args ...interface{}) (n int, err error)

Fprintf is a wrapper around fmt.Fprintf

func (*TextPrinter) PrintObj

func (tp *TextPrinter) PrintObj(obj runtime.Object, writer io.Writer) error

PrintObj is an implementation of ResourcePrinter.PrintObj that prints object

func (*TextPrinter) Printf

func (tp *TextPrinter) Printf(format string, args ...interface{}) (n int, err error)

Printf is a wrapper around fmt.Printf

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL