cli-runtime: k8s.io/cli-runtime/pkg/printers Index | Files

package printers

import "k8s.io/cli-runtime/pkg/printers"

Package printers is helper for formatting and printing runtime objects into primitives io.writer.

Index

Package Files

discard.go doc.go interface.go json.go jsonpath.go name.go sourcechecker.go tableprinter.go tabwriter.go template.go typesetter.go

Variables

var InternalObjectPreventer = &illegalPackageSourceChecker{disallowedPackagePrefixes}
var (
    InternalObjectPrinterErr = "a versioned object must be passed to a printer"
)

func GetNewTabWriter Uses

func GetNewTabWriter(output io.Writer) *tabwriter.Writer

GetNewTabWriter returns a tabwriter that translates tabbed columns in input into properly aligned text.

func GetObjectGroupKind Uses

func GetObjectGroupKind(obj runtime.Object) schema.GroupKind

func IsInternalObjectError Uses

func IsInternalObjectError(err error) bool

type GoTemplatePrinter Uses

type GoTemplatePrinter struct {
    // contains filtered or unexported fields
}

GoTemplatePrinter is an implementation of ResourcePrinter which formats data with a Go Template.

func NewGoTemplatePrinter Uses

func NewGoTemplatePrinter(tmpl []byte) (*GoTemplatePrinter, error)

func (*GoTemplatePrinter) AllowMissingKeys Uses

func (p *GoTemplatePrinter) AllowMissingKeys(allow bool)

AllowMissingKeys tells the template engine if missing keys are allowed.

func (*GoTemplatePrinter) PrintObj Uses

func (p *GoTemplatePrinter) PrintObj(obj runtime.Object, w io.Writer) error

PrintObj formats the obj with the Go Template.

type HumanReadablePrinter Uses

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.

func (*HumanReadablePrinter) PrintObj Uses

func (h *HumanReadablePrinter) PrintObj(obj runtime.Object, output io.Writer) error

PrintObj prints the obj in a human-friendly format according to the type of the obj.

type JSONPathPrinter Uses

type JSONPathPrinter struct {
    *jsonpath.JSONPath
    // contains filtered or unexported fields
}

JSONPathPrinter is an implementation of ResourcePrinter which formats data with jsonpath expression.

func NewJSONPathPrinter Uses

func NewJSONPathPrinter(tmpl string) (*JSONPathPrinter, error)

func (*JSONPathPrinter) PrintObj Uses

func (j *JSONPathPrinter) PrintObj(obj runtime.Object, w io.Writer) error

PrintObj formats the obj with the JSONPath Template.

type JSONPrinter Uses

type JSONPrinter struct{}

JSONPrinter is an implementation of ResourcePrinter which outputs an object as JSON.

func (*JSONPrinter) PrintObj Uses

func (p *JSONPrinter) PrintObj(obj runtime.Object, w io.Writer) error

PrintObj is an implementation of ResourcePrinter.PrintObj which simply writes the object to the Writer.

type NamePrinter Uses

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.

func (*NamePrinter) PrintObj Uses

func (p *NamePrinter) PrintObj(obj runtime.Object, w io.Writer) error

PrintObj is an implementation of ResourcePrinter.PrintObj which decodes the object and print "resource/name" pair. If the object is a List, print all items in it.

type PrintOptions Uses

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 Uses

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 Uses

func NewTablePrinter(options PrintOptions) ResourcePrinter

NewTablePrinter creates a printer suitable for calling PrintObj().

type ResourcePrinterFunc Uses

type ResourcePrinterFunc func(runtime.Object, io.Writer) error

ResourcePrinterFunc is a function that can print objects

func NewDiscardingPrinter Uses

func NewDiscardingPrinter() ResourcePrinterFunc

NewDiscardingPrinter is a printer that discards all objects

func (ResourcePrinterFunc) PrintObj Uses

func (fn ResourcePrinterFunc) PrintObj(obj runtime.Object, w io.Writer) error

PrintObj implements ResourcePrinter

type TypeSetterPrinter Uses

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 Uses

func NewTypeSetter(typer runtime.ObjectTyper) *TypeSetterPrinter

NewTypeSetter constructs a wrapping printer with required params

func (*TypeSetterPrinter) PrintObj Uses

func (p *TypeSetterPrinter) PrintObj(obj runtime.Object, w io.Writer) error

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 Uses

func (p *TypeSetterPrinter) ToPrinter(delegate ResourcePrinter) ResourcePrinter

ToPrinter returns a printer (not threadsafe!) that has been wrapped

func (*TypeSetterPrinter) WrapToPrinter Uses

func (p *TypeSetterPrinter) WrapToPrinter(delegate ResourcePrinter, err error) (ResourcePrinter, error)

WrapToPrinter wraps the common ToPrinter method

type YAMLPrinter Uses

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.

func (*YAMLPrinter) PrintObj Uses

func (p *YAMLPrinter) PrintObj(obj runtime.Object, w io.Writer) error

PrintObj prints the data as YAML.

Package printers imports 22 packages (graph) and is imported by 141 packages. Updated 2020-04-30. Refresh now. Tools for package owners.