k8sutil

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2020 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CombineManifests added in v0.17.0

func CombineManifests(base []byte, manifests ...[]byte) []byte

CombineManifests combines given manifests with a base manifest and adds yaml style separation. Nothing is appended if the manifest is empty or base already contains a trailing separator.

func CreateFQAPIs added in v0.11.0

func CreateFQAPIs(pkg string, gvs map[string][]string) (apis []string)

CreateFQAPIs return a slice of all fully qualified pkg + groups + versions of pkg and gvs in the format "pkg/groupA/v1".

func FormatOperatorNameDNS1123 added in v0.14.0

func FormatOperatorNameDNS1123(name string) string

FormatOperatorNameDNS1123 ensures name is DNS1123 label-compliant by replacing all non-compliant UTF-8 characters with "-".

func GenerateCombinedGlobalManifest added in v0.17.0

func GenerateCombinedGlobalManifest(crdsDir string) (*os.File, error)

GenerateCombinedGlobalManifest creates a temporary manifest yaml by combining all standard global resource manifests in crdsDir.

func GenerateCombinedNamespacedManifest added in v0.17.0

func GenerateCombinedNamespacedManifest(deployDir string) (*os.File, error)

GenerateCombinedNamespacedManifest creates a temporary manifest yaml by combining all standard namespaced resource manifests in deployDir.

func GetCustomResourceDefinitions added in v0.17.0

func GetCustomResourceDefinitions(crdsDir string) (crds []apiextv1beta1.CustomResourceDefinition, err error)

GetCustomResourceDefinitions returns all CRD manifests in the directory crdsDir.

func GetDisplayName added in v0.9.0

func GetDisplayName(name string) string

GetDisplayName turns a project dir name in any of {snake, chain, camel} cases, hierarchical dot structure, or space-delimited into a space-delimited, title'd display name. Ex. "another-_AppOperator_againTwiceThrice More" -> "Another App Operator Again Twice Thrice More"

func GetKubeconfigAndNamespace

func GetKubeconfigAndNamespace(configPath string) (*rest.Config, string, error)

GetKubeconfigAndNamespace returns the *rest.Config and default namespace defined in the kubeconfig at the specified path. If no path is provided, returns the default *rest.Config and namespace

func GetObjectBytes added in v0.6.0

func GetObjectBytes(obj interface{}, m MarshalFunc) ([]byte, error)

GetObjectBytes marshalls an object with m and removes runtime-managed fields: 'status', 'creationTimestamp'

func GetTypeMetaFromBytes added in v0.10.0

func GetTypeMetaFromBytes(b []byte) (t metav1.TypeMeta, err error)

GetTypeMetaFromBytes gets the type and object metadata from b. b is assumed to be a single Kubernetes resource manifest.

func ParseGroupSubpackages added in v0.11.0

func ParseGroupSubpackages(apisDir string) (map[string][]string, error)

ParseGroupSubpackages parses the apisDir directory tree and returns a map of all found API groups to subpackages.

func ParseGroupVersions added in v0.11.0

func ParseGroupVersions(apisDir string) (map[string][]string, error)

ParseGroupVersions parses the apisDir directory tree and returns a map of all found API groups to versions.

Types

type CRDVersions added in v0.13.0

func (CRDVersions) Len added in v0.13.0

func (vs CRDVersions) Len() int

func (CRDVersions) Less added in v0.13.0

func (vs CRDVersions) Less(i, j int) bool

func (CRDVersions) Swap added in v0.13.0

func (vs CRDVersions) Swap(i, j int)

type MarshalFunc added in v0.9.0

type MarshalFunc func(interface{}) ([]byte, error)

type MatchingFields added in v0.11.0

type MatchingFields struct {
	Sel fields.Selector
}

MatchingFields implements the client.ListOption and client.DeleteAllOfOption interfaces so fields.Selector can be used directly in client.List and client.DeleteAllOf.

func (MatchingFields) ApplyToDeleteAllOf added in v0.11.0

func (m MatchingFields) ApplyToDeleteAllOf(opts *client.DeleteAllOfOptions)

func (MatchingFields) ApplyToList added in v0.11.0

func (m MatchingFields) ApplyToList(opts *client.ListOptions)

type Scanner added in v0.17.0

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

Scanner scans a yaml manifest file for manifest tokens delimited by "---". See bufio.Scanner for semantics.

func NewYAMLScanner added in v0.17.0

func NewYAMLScanner(b []byte) *Scanner

func (*Scanner) Bytes added in v0.17.0

func (s *Scanner) Bytes() []byte

func (*Scanner) Err added in v0.17.0

func (s *Scanner) Err() error

func (*Scanner) Scan added in v0.17.0

func (s *Scanner) Scan() bool

func (*Scanner) Text added in v0.17.0

func (s *Scanner) Text() string

Jump to

Keyboard shortcuts

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