util

package
v0.12.3 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2019 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// location to use for generating temporary files, such as the kubeconfig needed by kubectl
	TempDir string
)

Functions

func Close

func Close(c Closer)

Close is a convenience function to close a object that has a Close() method, ignoring any errors Used to satisfy errcheck lint

func DeleteFile added in v0.11.0

func DeleteFile(path string)

DeleteFile is best effort deletion of a file

func FirstNonEmpty added in v0.11.0

func FirstNonEmpty(args ...string) string

func MakeSignature added in v0.6.0

func MakeSignature(size int) ([]byte, error)

MakeSignature generates a cryptographically-secure pseudo-random token, based on a given number of random bytes, for signing purposes.

func RetryUntilSucceed added in v0.11.0

func RetryUntilSucceed(action func() error, desc string, ctx context.Context, timeout time.Duration)

RetryUntilSucceed keep retrying given action with specified timeout until action succeed or specified context is done.

func RunAllAsync added in v0.11.0

func RunAllAsync(count int, action func(i int) error) (err error)

func Wait added in v0.4.1

func Wait(timeout uint, f func(chan<- bool)) bool

Wait takes a check interval and timeout and waits for a function to return `true`. Wait will return `true` on success and `false` on timeout. The passed function, in turn, should pass `true` (or anything, really) to the channel when it's done. Pass `0` as the timeout to run infinitely until completion.

Types

type Closer

type Closer interface {
	Close() error
}

type KeyLock

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

Allows to lock by string key

func NewKeyLock

func NewKeyLock() *KeyLock

NewKeyLock creates new instance of KeyLock

func (*KeyLock) Lock

func (keyLock *KeyLock) Lock(key string)

Lock blocks goroutine using key specific mutex

func (*KeyLock) Unlock

func (keyLock *KeyLock) Unlock(key string)

Unlock releases key specific mutex

Directories

Path Synopsis
git
Package kube provides helper utilities common for kubernetes
Package kube provides helper utilities common for kubernetes

Jump to

Keyboard shortcuts

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