func Ever(ctx context.Context) bool
Ever returns true if the context was wrapped by Never.
func IsNotNil(err error) bool
IsNotNil returns true if err is not nil.
func IsTemporary(err error) bool
IsTemporary returns true if err implements Temporary() and it returns true.
func Never(ctx context.Context) context.Context
Never returns a context that signals something should not be retried. This is a hack and can be used to communicate across package boundaries to avoid retry amplification.
func Retry(f func() error, p Predicate, backoff wait.Backoff) (err error)
Retry retries a given function, f, until a predicate is satisfied, using exponential backoff. If the predicate is never satisfied, it will return the last error returned by f.
Backoff is an alias of our own wait.Backoff to avoid name conflicts with the kubernetes wait package. Typing retry.Backoff is aesier than fixing the wrong import every time you use wait.Backoff.
type Backoff = wait.Backoff
Predicate determines whether an error should be retried.
type Predicate func(error) (retry bool)
Name | Synopsis |
---|---|
.. |