Documentation ¶
Overview ¶
Package util provides utility functions for the cmd packages.
Index ¶
- Constants
- Variables
- func AllLocalIP4() ([]net.IP, error)
- func CertPoolFromFile(filename string) (*x509.CertPool, error)
- func CertificatesFromFile(file string) ([]*x509.Certificate, error)
- func CertificatesFromPEM(pemCerts []byte) ([]*x509.Certificate, error)
- func DefaultLocalIP4() (net.IP, error)
- func DefaultSubCommandRun(out io.Writer) func(c *cobra.Command, args []string)
- func Env(key string, defaultValue string) string
- func EnvInt(key string, defaultValue int32, minValue int32) int32
- func GetCertificateFunc(certs map[string]*tls.Certificate) func(*tls.ClientHelloInfo) (*tls.Certificate, error)
- func GetDisplayFilename(filename string) string
- func GetDistributionName(binaryName string) string
- func GetEnv(key string) (string, bool)
- func GetLogLevel() (level int)
- func GetPlatformName(binaryName string) string
- func GetProductName(binaryName string) string
- func HostnameMatchSpecCandidates(hostname string) []string
- func HostnameMatches(hostname string, matchSpec string) bool
- func IsEnvironmentArgument(s string) bool
- func IsTerminal(r io.Reader) bool
- func IsTerminalWriter(w io.Writer) bool
- func ListenAndServe(srv *http.Server, network string) error
- func ListenAndServeTLS(srv *http.Server, network string, certFile, keyFile string) error
- func MakeAbs(path, base string) (string, error)
- func MakeRelative(path, base string) (string, error)
- func ParseEnv(spec []string, defaultReader io.Reader) ([]kapi.EnvVar, []string, error)
- func PromptForBool(r io.Reader, w io.Writer, format string, a ...interface{}) bool
- func PromptForPasswordString(r io.Reader, w io.Writer, format string, a ...interface{}) string
- func PromptForString(r io.Reader, w io.Writer, format string, a ...interface{}) string
- func PromptForStringWithDefault(r io.Reader, w io.Writer, def string, format string, a ...interface{}) string
- func RelativizePathWithNoBacksteps(refs []*string, base string) error
- func RelativizePaths(refs []*string, base string) error
- func ResolvePaths(refs []*string, base string) error
- func ResolveResource(defaultResource, resourceString string, mapper meta.RESTMapper) (string, string, error)
- func TransportFor(ca string, certFile string, keyFile string) (http.RoundTripper, error)
- func TryListen(network, hostPort string) (bool, error)
- func WaitForSuccessfulDial(https bool, network, address string, timeout, interval time.Duration, ...) error
- type Environment
- type Mux
Constants ¶
const ( ProductOrigin = `Origin` ProductOpenShift = `OpenShift` ProductAtomicEnterprise = `Atomic Enterprise` )
Variables ¶
var ErrExit = fmt.Errorf("exit directly")
ErrExit is a marker interface for cli commands indicating that the response has been processed
var ErrorNoDefaultIP = errors.New("no suitable IP address")
ErrorNoDefaultIP is returned when no suitable non-loopback address can be found.
Functions ¶
func AllLocalIP4 ¶
AllLocalIP4 returns all the IPv4 addresses that this host can be reached on.
func CertificatesFromFile ¶
func CertificatesFromFile(file string) ([]*x509.Certificate, error)
func CertificatesFromPEM ¶
func CertificatesFromPEM(pemCerts []byte) ([]*x509.Certificate, error)
func DefaultLocalIP4 ¶
DefaultLocalIP4 returns an IPv4 address that this host can be reached on. Will return NoDefaultIP if no suitable address can be found.
func DefaultSubCommandRun ¶
func GetCertificateFunc ¶ added in v1.0.7
func GetCertificateFunc(certs map[string]*tls.Certificate) func(*tls.ClientHelloInfo) (*tls.Certificate, error)
GetCertificateFunc returns a function that can be used in tls.Config#GetCertificate Returns nil if len(certs) == 0
func GetDisplayFilename ¶ added in v1.0.6
GetDisplayFilename returns the absolute path of the filename as long as there was no error, otherwise it returns the filename as-is
func GetDistributionName ¶ added in v1.0.7
GetDistributionName returns an appropriate Kubernetes distribution name. Distribution name can be used in relation to some feature set in command's usage string (e.g. <distribution name> allows you to build, run, etc.).
func GetPlatformName ¶ added in v1.0.7
GetPlatformName returns an appropriate platform name for given binary name. Platform name can be used as a headline in command's usage.
func GetProductName ¶ added in v1.0.7
GetProductName chooses appropriate product for a binary name.
func HostnameMatchSpecCandidates ¶ added in v1.0.7
HostnameMatchSpecCandidates returns a list of match specs that would match the provided hostname Returns nil if len(hostname) == 0
func HostnameMatches ¶ added in v1.0.7
HostnameMatches returns true if the given hostname is matched by the given matchSpec
func IsEnvironmentArgument ¶
func IsTerminal ¶
IsTerminal returns whether the passed io.Reader is a terminal or not
func IsTerminalWriter ¶ added in v1.0.1
IsTerminalWriter returns whether the passed io.Writer is a terminal or not
func ListenAndServe ¶ added in v1.0.5
ListenAndServe starts a server that listens on the provided TCP mode (as supported by net.Listen)
func ListenAndServeTLS ¶ added in v1.0.5
ListenAndServeTLS starts a server that listens on the provided TCP mode (as supported by net.Listen).
func MakeRelative ¶
func ParseEnv ¶ added in v1.1.2
ParseEnv parses the list of environment variables into kubernetes EnvVar
func PromptForBool ¶
PromptForBool prompts for user input of a boolean value. The accepted values are:
yes, y, true, t, 1 (not case sensitive) no, n, false, f, 0 (not case sensitive)
A valid answer is mandatory so it will keep asking until an answer is provided.
func PromptForPasswordString ¶
PromptForPasswordString prompts for user input by disabling echo in terminal, useful for password prompt.
func PromptForString ¶
PromptForString takes an io.Reader and prompts for user input if it's a terminal, returning the result.
func PromptForStringWithDefault ¶
func PromptForStringWithDefault(r io.Reader, w io.Writer, def string, format string, a ...interface{}) string
PromptForStringWithDefault prompts for user input but take a default in case nothing is provided.
func RelativizePathWithNoBacksteps ¶
RelativizePathWithNoBacksteps updates the given refs to be relative paths, relative to the given base directory as long as they do not require backsteps. Any path requiring a backstep is left as-is as long it is absolute. Any non-absolute path that can't be relativized produces an error
func RelativizePaths ¶
RelativizePaths updates the given refs to be relative paths, relative to the given base directory
func ResolvePaths ¶
ResolvePaths updates the given refs to be absolute paths, relative to the given base directory
func ResolveResource ¶ added in v1.0.8
func ResolveResource(defaultResource, resourceString string, mapper meta.RESTMapper) (string, string, error)
ResolveResource returns the resource type and name of the resourceString. If the resource string has no specified type, defaultResource will be returned.
func TransportFor ¶
TransportFor returns an http.Transport for the given ca and client cert (which may be empty strings)
Types ¶
type Environment ¶
func ParseEnvironmentArguments ¶
func ParseEnvironmentArguments(s []string) (Environment, []string, []error)