Documentation ¶
Index ¶
- Constants
- func AggregateErrors(errs []error, format string, args ...interface{}) error
- func CreateTempFile(content string) (*os.File, error)
- func PathToProjectRoot() string
- func Retry(maxRetries int, delay time.Duration, f func() error) error
- func RetryWithTimeout(f RetryFunc, period time.Duration, timeout time.Duration, description string) error
- func SetGlobalLogLevel(userLogLevelSelection string, logger *capnslog.PackageLogger)
- func WriteFile(filePath string, contentBuffer bytes.Buffer) error
- func WriteFileToLog(logger *capnslog.PackageLogger, path string)
- type RetryFunc
Constants ¶
const DefaultLogLevel = capnslog.INFO
Variables ¶
This section is empty.
Functions ¶
func AggregateErrors ¶
AggregateErrors takes a list of errors formats them into a pretty, user-readable list headed by the text "errors:". All errors in the list will lose any context besides their error string. If the errs list is empty, AggregateErrors returns nil. Example:
AggregateErrors(errList, "errors for my %q", "mom") --> `errors for my "mom": error 1 error 2 etc.`
func CreateTempFile ¶
CreateTempFile creates a temporary file with content passed as an argument
func PathToProjectRoot ¶
func PathToProjectRoot() string
PathToProjectRoot returns the path to the root of the rook repo on the current host. This is primarily useful for tests.
func Retry ¶
Retry will attempt the given function until it succeeds, up to the given maximum amount of retries, sleeping for the given duration in between attempts.
func RetryWithTimeout ¶
func RetryWithTimeout(f RetryFunc, period time.Duration, timeout time.Duration, description string) error
RetryWithTimeout retries the RetryFunc until the timeout occurs. It will retry once more after the timeout to avoid race conditions at the expense of running for slightly longer than timeout in the timeout/error case. The given description will be output in log/error messages as "... waiting for <description>..."
func SetGlobalLogLevel ¶
func SetGlobalLogLevel(userLogLevelSelection string, logger *capnslog.PackageLogger)
func WriteFileToLog ¶
func WriteFileToLog(logger *capnslog.PackageLogger, path string)
Types ¶
type RetryFunc ¶
RetryFunc is a function that returns true when it is done and it should be retried no longer. It should return error if there has been an error. The error will be logged if done==false (should keep retrying). The error will be returned by the calling function if done==true (should stop retrying).