util

package
v1.21.9 Latest Latest
Warning

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

Go to latest
Published: Jan 25, 2022 License: Apache-2.0 Imports: 21 Imported by: 1

Documentation

Index

Constants

View Source
const DefaultAPIServerReadyTimeout = 15 * time.Minute

This sets a default duration to wait for the apiserver to become ready. This is primarily used to block startup of agent supervisor controllers until the apiserver is ready to serve requests, in the same way that the apiReady channel is used in the server packages, so it can be fairly long. It must be at least long enough for downstream projects like RKE2 to start the apiserver in the background.

Variables

View Source
var ErrCommandNoArgs = errors.New("this command does not take any arguments")
View Source
var ErrUnsupportedPlatform = errors.New("unsupported platform")

Functions

func AddFeatureGate

func AddFeatureGate(current, new string) string

AddFeatureGate correctly appends a feature gate key pair to the feature gates CLI switch.

func BuildControllerEventRecorder

func BuildControllerEventRecorder(k8s clientset.Interface, controllerName string) record.EventRecorder

func GetAddresses

func GetAddresses(endpoint *v1.Endpoints) []string

func GetFirst4

func GetFirst4(elems []net.IP) (net.IP, error)

GetFirst4 returns the first IPv4 address from the list of IP addresses. If no IPv4 addresses are found, an error is raised.

func GetFirst4Net

func GetFirst4Net(elems []*net.IPNet) (*net.IPNet, error)

GetFirst4Net returns the first IPv4 network from the list of IP networks. If no IPv4 addresses are found, an error is raised.

func GetFirst4String

func GetFirst4String(elems []string) (string, error)

GetFirst4String returns the first IPv4 address from a list of IP address strings. If no IPv4 addresses are found, an error is raised.

func GetHostnameAndIPs

func GetHostnameAndIPs(name string, nodeIPs cli.StringSlice) (string, []net.IP, error)

GetHostnameAndIPs takes a node name and list of IPs, usually from CLI args. If set, these are used to return the node's name and addresses. If not set, the system hostname and primary interface address are returned instead.

func JoinIP4Nets

func JoinIP4Nets(elems []*net.IPNet) string

JoinIP4Nets stringifies and joins a list of IPv4 networks with commas.

func JoinIP6Nets

func JoinIP6Nets(elems []*net.IPNet) string

JoinIP6Nets stringifies and joins a list of IPv6 networks with commas.

func JoinIPNets

func JoinIPNets(elems []*net.IPNet) string

JoinIPNets stringifies and joins a list of IP networks with commas.

func JoinIPs

func JoinIPs(elems []net.IP) string

JoinIPs stringifies and joins a list of IP addresses with commas.

func ParseStringSliceToIPs

func ParseStringSliceToIPs(s cli.StringSlice) ([]net.IP, error)

ParseStringSliceToIPs converts slice of strings that in turn can be lists of comma separated unparsed IP addresses into a single slice of net.IP, it returns error if at any point parsing failed

func SetFileModeForFile

func SetFileModeForFile(file *os.File, mode os.FileMode) error

func SetFileModeForPath

func SetFileModeForPath(name string, mode os.FileMode) error

func WaitForAPIServerReady

func WaitForAPIServerReady(ctx context.Context, client clientset.Interface, timeout time.Duration) error

WaitForAPIServerReady waits for the API Server's /readyz endpoint to report "ok" with timeout. This is modified from WaitForAPIServer from the Kubernetes controller-manager app, but checks the readyz endpoint instead of the deprecated healthz endpoint, and supports context.

Types

This section is empty.

Jump to

Keyboard shortcuts

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