Documentation ¶
Overview ¶
Package util implements various utility functions used in both testing and implementation of Kubernetes. Package util may not depend on any other package in the Kubernetes package tree.
Index ¶
- func AllPtrFieldsNil(obj interface{}) bool
- func CompileRegexps(regexpStrings []string) ([]*regexp.Regexp, error)
- func ExecuteTemplate(w io.Writer, templateText string, data interface{}) error
- func ExecuteTemplateToString(templateText string, data interface{}) (string, error)
- func FileExists(filename string) (bool, error)
- func Int32Ptr(i int32) *int32
- func Int32PtrDerefOr(ptr *int32, def int32) int32
- func IntPtr(i int) *int
- func IntPtrDerefOr(ptr *int, def int) int
- func ReadDirNoStat(dirname string) ([]string, error)
- func Umask(mask int) (old int, err error)
- func UsingSystemdInitSystem() bool
- type Trace
- type Trie
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AllPtrFieldsNil ¶ added in v0.8.0
func AllPtrFieldsNil(obj interface{}) bool
Tests whether all pointer fields in a struct are nil. This is useful when, for example, an API struct is handled by plugins which need to distinguish "no plugin accepted this spec" from "this spec is empty".
This function is only valid for structs and pointers to structs. Any other type will cause a panic. Passing a typed nil pointer will return true.
func CompileRegexps ¶
Takes a list of strings and compiles them into a list of regular expressions
func ExecuteTemplate ¶ added in v0.10.0
ExecuteTemplate executes templateText with data and output written to w.
func ExecuteTemplateToString ¶ added in v0.10.0
func FileExists ¶ added in v0.19.0
func Int32PtrDerefOr ¶ added in v1.3.0
Int32PtrDerefOr dereference the int32 ptr and returns it i not nil, else returns def.
func IntPtrDerefOr ¶ added in v1.2.0
IntPtrDerefOr dereference the int ptr and returns it i not nil, else returns def.
func ReadDirNoStat ¶ added in v1.5.0
ReadDirNoStat returns a string of files/directories contained in dirname without calling lstat on them.
func UsingSystemdInitSystem ¶ added in v0.20.0
func UsingSystemdInitSystem() bool
Detects if using systemd as the init system Please note that simply reading /proc/1/cmdline can be misleading because some installation of various init programs can automatically make /sbin/init a symlink or even a renamed version of their main program. TODO(dchen1107): realiably detects the init system using on the system: systemd, upstart, initd, etc.
Types ¶
type Trie ¶ added in v1.5.0
type Trie struct {
// contains filtered or unexported fields
}
A simple trie implementation with Add an HasPrefix methods only.
func CreateTrie ¶ added in v1.5.0
CreateTrie creates a Trie and add all strings in the provided list to it.
Directories ¶
Path | Synopsis |
---|---|
Package bandwidth provides utilities for bandwidth shaping
|
Package bandwidth provides utilities for bandwidth shaping |
triple
Package triple generates key-certificate pairs for the triple (CA, Server, Client).
|
Package triple generates key-certificate pairs for the triple (CA, Server, Client). |
Package chown provides an interface and implementations for things that run run the chmod system call.
|
Package chown provides an interface and implementations for things that run run the chmod system call. |
Package chown provides utilities to chown a path
|
Package chown provides utilities to chown a path |
Package config provides utility objects for decoupling sources of configuration and the actual configuration state.
|
Package config provides utility objects for decoupling sources of configuration and the actual configuration state. |
Package dbus provides an injectable interface and implementations for D-Bus communication
|
Package dbus provides an injectable interface and implementations for D-Bus communication |
Package errors implements various utility functions and types around errors.
|
Package errors implements various utility functions and types around errors. |
Package exec provides an injectable interface and implementations for running commands.
|
Package exec provides an injectable interface and implementations for running commands. |
Package flushwriter implements a wrapper for a writer that flushes on every write if that writer implements the io.Flusher interface
|
Package flushwriter implements a wrapper for a writer that flushes on every write if that writer implements the io.Flusher interface |
Package framer implements simple frame decoding techniques for an io.ReadCloser
|
Package framer implements simple frame decoding techniques for an io.ReadCloser |
Package goroutinemap implements a data structure for managing go routines by name.
|
Package goroutinemap implements a data structure for managing go routines by name. |
exponentialbackoff
Package exponentialbackoff contains logic for implementing exponential backoff for GoRoutineMap and NestedPendingOperations.
|
Package exponentialbackoff contains logic for implementing exponential backoff for GoRoutineMap and NestedPendingOperations. |
Package httpstream adds multiplexed streaming support to HTTP requests and responses via connection upgrades.
|
Package httpstream adds multiplexed streaming support to HTTP requests and responses via connection upgrades. |
Package intstr is a generated protocol buffer package.
|
Package intstr is a generated protocol buffer package. |
Package iptables provides an interface and implementations for running iptables commands.
|
Package iptables provides an interface and implementations for running iptables commands. |
package jsonpath is a template engine using jsonpath syntax, which can be seen at http://goessner.net/articles/JsonPath/.
|
package jsonpath is a template engine using jsonpath syntax, which can be seen at http://goessner.net/articles/JsonPath/. |
Package labels provides utilities to work with Kubernetes labels.
|
Package labels provides utilities to work with Kubernetes labels. |
Package limitwriter provides a writer that only allows a certain number of bytes to be written.
|
Package limitwriter provides a writer that only allows a certain number of bytes to be written. |
Package maps has common methods for dealing with common map types.
|
Package maps has common methods for dealing with common map types. |
Package mount defines an interface to mounting filesystems.
|
Package mount defines an interface to mounting filesystems. |
Package netsh provides an interface and implementations for running Windows netsh commands.
|
Package netsh provides an interface and implementations for running Windows netsh commands. |
Package oom implements utility functions relating to out of memory management.
|
Package oom implements utility functions relating to out of memory management. |
Package pod provides utilities to work with Kubernetes pod and pod templates.
|
Package pod provides utilities to work with Kubernetes pod and pod templates. |
Package procfs implements utility functions relating to the /proc mount.
|
Package procfs implements utility functions relating to the /proc mount. |
Package proxy provides transport and upgrade support for proxies
|
Package proxy provides transport and upgrade support for proxies |
Package rand provides utilities related to randomization.
|
Package rand provides utilities related to randomization. |
Package selinux contains wrapper functions for the libcontainer SELinux package.
|
Package selinux contains wrapper functions for the libcontainer SELinux package. |
Package sets has auto-generated set types.
|
Package sets has auto-generated set types. |
types
Package types just provides input types to the set generator.
|
Package types just provides input types to the set generator. |
Package slice provides utility methods for common operations on slices.
|
Package slice provides utility methods for common operations on slices. |
Package wait provides tools for polling or listening for changes to a condition.
|
Package wait provides tools for polling or listening for changes to a condition. |
Package workqueue provides a simple queue that supports the following features: * Fair: items processed in the order in which they are added.
|
Package workqueue provides a simple queue that supports the following features: * Fair: items processed in the order in which they are added. |
Package wsstream contains utilities for streaming content over WebSockets.
|
Package wsstream contains utilities for streaming content over WebSockets. |