Documentation ¶
Overview ¶
Package printers is helper for formatting and printing runtime objects into primitives io.writer.
Index ¶
- Variables
- func GetNewTabWriter(output io.Writer) *tabwriter.Writer
- func GetObjectGroupKind(obj runtime.Object) schema.GroupKind
- func IsInternalObjectError(err error) bool
- type GoTemplatePrinter
- type HumanReadablePrinter
- type JSONPathPrinter
- type JSONPrinter
- type NamePrinter
- type PrintOptions
- type ResourcePrinter
- type ResourcePrinterFunc
- type TypeSetterPrinter
- type YAMLPrinter
Constants ¶
This section is empty.
Variables ¶
var InternalObjectPreventer = &illegalPackageSourceChecker{disallowedPackagePrefixes}
var (
InternalObjectPrinterErr = "a versioned object must be passed to a printer"
)
Functions ¶
func GetNewTabWriter ¶ added in v0.17.0
GetNewTabWriter returns a tabwriter that translates tabbed columns in input into properly aligned text.
func IsInternalObjectError ¶
Types ¶
type GoTemplatePrinter ¶
type GoTemplatePrinter struct {
// contains filtered or unexported fields
}
GoTemplatePrinter is an implementation of ResourcePrinter which formats data with a Go Template.
func NewGoTemplatePrinter ¶
func NewGoTemplatePrinter(tmpl []byte) (*GoTemplatePrinter, error)
func (*GoTemplatePrinter) AllowMissingKeys ¶
func (p *GoTemplatePrinter) AllowMissingKeys(allow bool)
AllowMissingKeys tells the template engine if missing keys are allowed.
type HumanReadablePrinter ¶ added in v0.17.0
type HumanReadablePrinter struct {
// contains filtered or unexported fields
}
HumanReadablePrinter is an implementation of ResourcePrinter which attempts to provide more elegant output. It is not threadsafe, but you may call PrintObj repeatedly; headers will only be printed if the object type changes. This makes it useful for printing items received from watches.
type JSONPathPrinter ¶
JSONPathPrinter is an implementation of ResourcePrinter which formats data with jsonpath expression.
func NewJSONPathPrinter ¶
func NewJSONPathPrinter(tmpl string) (*JSONPathPrinter, error)
type JSONPrinter ¶
type JSONPrinter struct{}
JSONPrinter is an implementation of ResourcePrinter which outputs an object as JSON.
type NamePrinter ¶
type NamePrinter struct { // ShortOutput indicates whether an operation should be // printed along side the "resource/name" pair for an object. ShortOutput bool // Operation describes the name of the action that // took place on an object, to be included in the // finalized "successful" message. Operation string }
NamePrinter is an implementation of ResourcePrinter which outputs "resource/name" pair of an object.
type PrintOptions ¶ added in v0.17.0
type PrintOptions struct { NoHeaders bool WithNamespace bool WithKind bool Wide bool ShowLabels bool Kind schema.GroupKind ColumnLabels []string SortBy string // indicates if it is OK to ignore missing keys for rendering an output template. AllowMissingKeys bool }
PrintOptions struct defines a struct for various print options
type ResourcePrinter ¶
type ResourcePrinter interface { // Print receives a runtime object, formats it and prints it to a writer. PrintObj(runtime.Object, io.Writer) error }
ResourcePrinter is an interface that knows how to print runtime objects.
func NewTablePrinter ¶ added in v0.17.0
func NewTablePrinter(options PrintOptions) ResourcePrinter
NewTablePrinter creates a printer suitable for calling PrintObj().
type ResourcePrinterFunc ¶
ResourcePrinterFunc is a function that can print objects
func NewDiscardingPrinter ¶
func NewDiscardingPrinter() ResourcePrinterFunc
NewDiscardingPrinter is a printer that discards all objects
type TypeSetterPrinter ¶
type TypeSetterPrinter struct { Delegate ResourcePrinter Typer runtime.ObjectTyper }
TypeSetterPrinter is an implementation of ResourcePrinter wraps another printer with types set on the objects
func NewTypeSetter ¶
func NewTypeSetter(typer runtime.ObjectTyper) *TypeSetterPrinter
NewTypeSetter constructs a wrapping printer with required params
func (*TypeSetterPrinter) PrintObj ¶
PrintObj is an implementation of ResourcePrinter.PrintObj which sets type information on the obj for the duration of printing. It is NOT threadsafe.
func (*TypeSetterPrinter) ToPrinter ¶
func (p *TypeSetterPrinter) ToPrinter(delegate ResourcePrinter) ResourcePrinter
ToPrinter returns a printer (not threadsafe!) that has been wrapped
func (*TypeSetterPrinter) WrapToPrinter ¶
func (p *TypeSetterPrinter) WrapToPrinter(delegate ResourcePrinter, err error) (ResourcePrinter, error)
WrapToPrinter wraps the common ToPrinter method
type YAMLPrinter ¶
type YAMLPrinter struct {
// contains filtered or unexported fields
}
YAMLPrinter is an implementation of ResourcePrinter which outputs an object as YAML. The input object is assumed to be in the internal version of an API and is converted to the given version first. If PrintObj() is called multiple times, objects are separated with a '---' separator.