Documentation ¶
Index ¶
- func BindFlags(flags *pflag.FlagSet) clientcmd.ClientConfig
- func CallInNetNSWithSysfsRemounted(innerNS ns.NetNS, toCall func(ns.NetNS) error) error
- func GetBoolFromString(str string) bool
- func GetK8sClientConfig(host string) (*rest.Config, error)
- func GetK8sClientset(config *rest.Config) (*kubernetes.Clientset, error)
- func Merge(base, override interface{}) interface{}
- func NewUUID() string
- func NewUUID5(nsUUID, s string) string
- func ReadJSON(filename string, v interface{}) error
- func Stringify(value interface{}) string
- func ToJSON(o interface{}) string
- func ToJSONUnindented(o interface{}) string
- func WaitForProcess(procFile string) (int, error)
- func WaitLoop(test func() (bool, error), retryPeriod time.Duration, timeout time.Duration, ...) error
- func WriteJSON(filename string, v interface{}, perm os.FileMode) error
- type Command
- type Commander
- type ShellTemplate
- type VFInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BindFlags ¶
func BindFlags(flags *pflag.FlagSet) clientcmd.ClientConfig
BindFlags applies standard Go flags and the flags used by kubeclient to the specified FlagSet.
func CallInNetNSWithSysfsRemounted ¶
CallInNetNSWithSysfsRemounted enters particular netns, adds new sysfs mount on top of /sys, calls "toCall" callback in this netns removing temporary mount on /sys at the end.
func GetBoolFromString ¶
GetBoolFromString returns false if str is an empty string or is equal to one of: "0", "f" or "false". Case doesnt't matter anythging else is true
func GetK8sClientConfig ¶
GetK8sClientConfig returns config that is needed to access k8s
func GetK8sClientset ¶
func GetK8sClientset(config *rest.Config) (*kubernetes.Clientset, error)
GetK8sClientset returns clientset for standard k8s APIs
func Merge ¶
func Merge(base, override interface{}) interface{}
Merge will take two data sets and merge them together - returning a new data set
func ReadJSON ¶
ReadJSON converts data from file specified by `filename` to provided as `v` interface.
func Stringify ¶
func Stringify(value interface{}) string
Stringify returns string representation for provided value.
func ToJSON ¶
func ToJSON(o interface{}) string
ToJSON converts the specified object to indented JSON. It panics in case if the object connot be converted.
func ToJSONUnindented ¶
func ToJSONUnindented(o interface{}) string
ToJSONUnindented converts the specified object to unindented JSON. It panics in case if the object connot be converted.
func WaitForProcess ¶
WaitForProcess waits for the following conditions to be true at the same time:
- the specified procFile is readable and contains two numeric values separated by space, PID and start time in jiffies (field 22 in /proc/PID/stat, starting from 1)
- the process with the PID read from procFile exists and has start time equal to the start time read from procFile
This avoids possible problems with stale procFile that could happen if only PID was stored there. The command can be used in shell script to generate the "procfile" for the current shell: /bin/sh -c 'echo "$$ `cut -d" " -f22 /proc/$$/stat`"'
func WaitLoop ¶
func WaitLoop(test func() (bool, error), retryPeriod time.Duration, timeout time.Duration, clock clockwork.Clock) error
WaitLoop executes test func in loop until it returns error, true, or the timeout elapses. clock argument denotes a clock object to use for waiting. When clock is nil, WaitLoop uses clockwork.NewRealClock()
Types ¶
type Command ¶
type Command interface { // Output runs the command and returns its standard output. // If stdin is non-nil, it's passed to the command's standed // input. Any returned error will usually be of type // *ExitError with ExitError.Stderr containing the stderr // output of the command. Run(stdin []byte) ([]byte, error) }
Command represents an external command being prepared or run.
type Commander ¶
type Commander interface { // Command returns an isntance of Command to execute the named // program with the given arguments. Command(name string, arg ...string) Command }
Commander is used to run external commands.
var DefaultCommander Commander = &defaultCommander{}
DefaultCommander is an implementation of Commander that runs the commands using exec.Command.
type ShellTemplate ¶
ShellTemplate denotes a simple template used to generate shell commands. It adds 'shellquote' function to go-template that can be used to quote string values for the shell.
func NewShellTemplate ¶
func NewShellTemplate(text string) *ShellTemplate
NewShellTemplate returns a new shell template using the specified text. It panics if the template doesn't compile.
func (*ShellTemplate) ExecuteToString ¶
func (t *ShellTemplate) ExecuteToString(data interface{}) (string, error)
ExecuteToString executes the template using the specified data and returns the result as a string.
func (*ShellTemplate) MustExecuteToString ¶
func (t *ShellTemplate) MustExecuteToString(data interface{}) string
MustExecuteToString executes the template using the specified data and returns the result as a string. It panics upon an error
type VFInfo ¶
type VFInfo struct { // ID contains VF number ID int // Mac contains hardware mac address Mac string // VLanID contains vlan id VLanID int // SpoofChecking holds status of spoof checking SpoofChecking bool // LinkState holds state of link (nil means auto) LinkState *bool }
VFInfo contains information about particular VF
func ParseIPLinkOutput ¶
ParseIPLinkOutput takes output of `ip link show somelink` and parses it to list of VFInfo structures