pipes

package
v0.4.5 Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2023 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var CommandWriterFormatFlag = "output"

CommandWriterFormatFlag is a global that can be overwritten to change the name of the flag used to get the output format from the command.

Functions

func CommandReaders

func CommandReaders(cmd *cobra.Command, args []string) []kio.Reader

CommandReaders returns KYAML readers for the supplied file name arguments.

func CommandWriters

func CommandWriters(cmd *cobra.Command, overwriteFiles bool) []kio.Writer

CommandWriters returns KYAML writers for the supplied command.

func Decode added in v0.3.13

func Decode(values ...interface{}) kio.Writer

Decode returns a writer over the YAML decoding (one per resource document).

func DecodeJSON added in v0.4.4

func DecodeJSON(values ...interface{}) kio.Writer

DecodeJSON returns a writer over the JSON decoding of the YAML (one per resource document).

func Encode added in v0.3.12

func Encode(values ...interface{}) kio.Reader

Encode returns a reader over the YAML encoding of the specified values.

Types

type ErrorReader added in v0.3.11

type ErrorReader struct{ Err error }

ErrorReader is an adapter to allow the use of an error as a kio.Reader.

func (ErrorReader) Read added in v0.3.11

func (r ErrorReader) Read() ([]*yaml.RNode, error)

Reader returns the wrapped failure.

type ExecReader

type ExecReader struct {
	// The YAML producing command.
	*exec.Cmd
}

ExecReader is a KYAML reader that consumes YAML from another process via stdout.

func (*ExecReader) Read

func (c *ExecReader) Read() ([]*yaml.RNode, error)

Read executes the supplied command and parses the output as a YAML document stream.

type ExecWriter

type ExecWriter struct {
	// The YAML consuming command.
	*exec.Cmd
}

ExecWriter is a KYAML writer that sends YAML to another process via stdin.

func (*ExecWriter) Write

func (c *ExecWriter) Write(nodes []*yaml.RNode) error

Write executes the supplied command, piping the generated YAML to stdin.

type FileReader added in v0.4.5

type FileReader struct {
	// The file name to read.
	Name string
	// The file system to use for resolving file contents (defaults to the OS reader).
	FS fs.FS

	// Temporary hack for configuring the byte reader.
	HackHooks []func(*kio.ByteReader)
}

FileReader is a KIO reader that lazily loads a file.

func (*FileReader) Read added in v0.4.5

func (r *FileReader) Read() ([]*yaml.RNode, error)

Read opens the configured file and reads the contents.

type FileWriter added in v0.4.5

type FileWriter struct {
	// The file name to write.
	Name string

	// Temporary hack for configuring the byte writer.
	HackHooks []func(*kio.ByteWriter)
}

FileWriter is a KIO writer that writes nodes to a file.

func (*FileWriter) Write added in v0.4.5

func (w *FileWriter) Write(nodes []*yaml.RNode) error

Write overwrites the file with encoded nodes.

type HelmValues added in v0.3.12

type HelmValues struct {
	// User specified values files (via -f/--values).
	ValueFiles []string
	// User specified values (via --set).
	Values []string
	// User specified string values (via --set-string).
	StringValues []string
	// User specified file values (via --set-file).
	FileValues []string

	// The file system to use for resolving file contents (defaults to the OS reader).
	FS fs.FS
}

HelmValues is a reader that emits resource nodes representing Helm values.

func (*HelmValues) AsMap added in v0.4.5

func (r *HelmValues) AsMap() (map[string]any, error)

AsMap converts the configured user specified values into a map of values.

func (*HelmValues) Mask added in v0.4.5

func (r *HelmValues) Mask(keep bool) kio.Filter

Mask returns a filter that either keeps or strips data impacted by these values.

func (*HelmValues) MergeMaps added in v0.3.18

func (r *HelmValues) MergeMaps(a, b map[string]any) map[string]any

MergeMaps is used to combine results from multiple values.

func (*HelmValues) Read added in v0.3.12

func (r *HelmValues) Read() ([]*yaml.RNode, error)

Read converts the configured user specified values into resource nodes.

type Kubectl

type Kubectl struct {
	// The path the kubectl binary, defaults to `kubectl`.
	Bin string
	// The path to the kubeconfig.
	KubeConfig string
	// The context name.
	Context string
	// The namespace name.
	Namespace string
	// The length of time to wait before giving up on a single request.
	RequestTimeout time.Duration
}

Kubectl is used for executing `kubectl` as part of a KYAML pipeline.

func (*Kubectl) Apply

func (k *Kubectl) Apply(ctx context.Context, opts ...karg.ApplyOption) *ExecWriter

Apply returns a sink for applying resources via kubectl.

func (*Kubectl) Command

func (k *Kubectl) Command(ctx context.Context, args ...string) *exec.Cmd

Command creates a new executable command with the configured global flags and the supplied arguments.

func (*Kubectl) Create

func (k *Kubectl) Create(ctx context.Context, opts ...karg.CreateOption) *ExecWriter

Create returns a sink for creating resources via kubectl.

func (*Kubectl) Delete added in v0.3.12

func (k *Kubectl) Delete(ctx context.Context, opts ...karg.DeleteOption) *ExecWriter

Delete returns a sink for deleting resources via kubectl.

func (*Kubectl) Get

func (k *Kubectl) Get(ctx context.Context, opts ...karg.GetOption) *ExecReader

Get returns a source for getting resources via kubectl.

func (*Kubectl) Patch added in v0.3.17

func (k *Kubectl) Patch(ctx context.Context, opts ...karg.PatchOption) *ExecWriter

Patch returns a sink for patching resources via kubectl.

func (*Kubectl) Reader added in v0.3.13

func (k *Kubectl) Reader(ctx context.Context, args ...string) *ExecReader

Reader returns a kio.Reader for the specified kubectl arguments.

func (*Kubectl) Wait added in v0.4.0

func (k *Kubectl) Wait(ctx context.Context, opts ...karg.WaitOption) *exec.Cmd

Wait returns a command to wait for conditions via kubectl.

func (*Kubectl) Writer added in v0.3.13

func (k *Kubectl) Writer(ctx context.Context, args ...string) *ExecWriter

Writer returns a kio.Writer for the specified kubectl arguments.

type ReadOneFunc added in v0.3.12

type ReadOneFunc func() (*yaml.RNode, error)

ReadOneFunc is an adapter to allow the use of single node returning functions as a kio.Reader.

func (ReadOneFunc) Read added in v0.3.12

func (r ReadOneFunc) Read() ([]*yaml.RNode, error)

Read evaluates the typed function and wraps the resulting non-nil node.

type ReaderFunc added in v0.3.11

type ReaderFunc func() ([]*yaml.RNode, error)

ReaderFunc is an adapter to allow the use of ordinary functions as a kio.Reader.

func (ReaderFunc) Read added in v0.3.11

func (r ReaderFunc) Read() ([]*yaml.RNode, error)

Read evaluates the typed function.

type TemplateReader

type TemplateReader struct {
	// The template to execute.
	Template *template.Template
	// The data for the template.
	Data interface{}
}

TemplateReader is a KYAML reader that consumes YAML from a Go template.

func (*TemplateReader) Read

func (c *TemplateReader) Read() ([]*yaml.RNode, error)

Read executes the supplied template and parses the output as a YAML document stream.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

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