util

package
v1.6.7 Latest Latest
Warning

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

Go to latest
Published: Jul 2, 2021 License: Apache-2.0 Imports: 9 Imported by: 164

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PathToProjectRoot added in v1.5.7

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 added in v0.7.0

func Retry(maxRetries int, delay time.Duration, f func() error) error

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 added in v1.6.0

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 WriteFile

func WriteFile(filePath string, contentBuffer bytes.Buffer) error

func WriteFileToLog added in v0.3.0

func WriteFileToLog(logger *capnslog.PackageLogger, path string)

Types

type RetryFunc added in v1.6.0

type RetryFunc func() (done bool, err error)

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).

type Set

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

func CreateSet

func CreateSet(values []string) *Set

Create a new set from the array

func NewSet

func NewSet() *Set

Create a new empty set

func SetDifference

func SetDifference(left, right []string) *Set

find items in the left slice that are not in the right slice

func (*Set) Add

func (s *Set) Add(newValue string) bool

Add a value to the set. Returns true if the value was added, false if it already exists.

func (*Set) AddMultiple

func (s *Set) AddMultiple(values []string)

Add multiple items more efficiently

func (*Set) AddSet

func (s *Set) AddSet(other *Set)

Add other set items

func (*Set) Contains

func (s *Set) Contains(value string) bool

Check whether a value is already contained in the set

func (*Set) Copy

func (s *Set) Copy() *Set

Create a copy of the set

func (*Set) Count

func (s *Set) Count() int

Get the count of items in the set

func (*Set) Equals

func (s *Set) Equals(other *Set) bool

Check if two sets contain the same elements

func (*Set) Iter

func (s *Set) Iter() <-chan string

Iterate over the items in the set

func (*Set) Remove

func (s *Set) Remove(oldValue string) bool

Remove a value from the set. Returns true if the value was removed, false if it does not exist.

func (*Set) Subtract

func (s *Set) Subtract(subset *Set)

Subtract the subset from the set

func (*Set) ToSlice

func (s *Set) ToSlice() []string

Convert the set to an array

Directories

Path Synopsis
Package exec embeds Rook's exec logic Copyright 2016 The Rook Authors.
Package exec embeds Rook's exec logic Copyright 2016 The Rook Authors.

Jump to

Keyboard shortcuts

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