Documentation ¶
Index ¶
- Variables
- func AreFilesEqual(file1, file2 string) (bool, error)
- func Base36Hash(input string, length int) (string, error)
- func BuildRequestPayload(signature string, payload map[string]interface{}) *bytes.Buffer
- func ContainsUpper(s string) bool
- func DisplayProfileData(op io.Writer)
- func EnsureDirectoryPermission(directoryPath string) error
- func FileModTime(filePath string) (time.Time, error)
- func FilenameNoExtension(fileName string) string
- func Filter[V any](elements []V, predicate func(V) bool) []V
- func FindProcess(targetPid int) (*psutils.Process, error)
- func GetFirstListenAddress(listenAddresses []string) string
- func GetNextFreePort() (int, error)
- func GetPluginName(plugin string) string
- func IsMacM1() (bool, error)
- func IsPortBindable(host string, port int) error
- func IsWSL() bool
- func JsonCloneToMap(val any) (map[string]any, error)
- func ListenAddressesContainsOneOfAddresses(listenAddresses []string, addresses []string) bool
- func LocalLoopbackAddresses() ([]string, error)
- func LocalPublicAddresses() ([]string, error)
- func LogTime(operation string)
- func Map[V any, M any](elements []V, mapper func(V) M) []M
- func MapRange(value int, valueRange RangeConstraint, desiredRange RangeConstraint) int
- func MergeMaps[M ~map[K]V, K comparable, V any](old, new M) M
- func MoveFile(source string, destination string) error
- func OpenBrowser(url string) error
- func Partition[V any](elements []V, predicate func(V) bool) ([]V, []V)
- func PidExists(targetPid int) (bool, error)
- func PluginFQNToSchemaName(pluginFQN string) string
- func Pluralize(base string, count int) string
- func PrettifyJsonFromReader(dataToExport io.Reader) (io.Reader, error)
- func RemoveDirectoryContents(removePath string) error
- func RemoveElementFromSlice(slice []string, s int) []string
- func SafeIntEqual(i1, i2 *int) bool
- func SafeStringsEqual(s1, s2 interface{}) bool
- func SendRequest(ctx context.Context, signature string, method string, sendRequestTo url.URL, ...) (*http.Response, error)
- func ShouldProfile() bool
- func SliceToLookup[K comparable](src []K) map[K]struct{}
- func SortedMapKeys[V any](m map[string]V) []string
- func ToIntegerPointer(i int) *int
- func ToStringPointer(s string) *string
- func TrimSchemaName(pluginFQN string) string
- func UnderlyingArch() (string, error)
- func UnquoteStringArray(stringArray []string) []string
- func Unzip(src, dst string) ([]string, error)
- func UserConfirmation(ctx context.Context, warningMsg string) (bool, error)
- type ExitCode
- type RangeConstraint
Constants ¶
This section is empty.
Variables ¶
var Timing []timeLog
Functions ¶
func AreFilesEqual ¶ added in v0.21.0
func BuildRequestPayload ¶
BuildRequestPayload merges the provided payload with the standard payload that needs to be sent
func ContainsUpper ¶ added in v0.19.0
ContainsUpper returns true if the string contains any uppercase characters
func DisplayProfileData ¶
func FilenameNoExtension ¶ added in v0.17.0
func Filter ¶
Filter returns a new slice only containing the elements for which invoking the predicate returned true
The predicate is invoked with each element
func FindProcess ¶
FindProcess tries to find the process with the given pid returns nil if the process could not be found
func GetFirstListenAddress ¶ added in v0.21.0
func GetNextFreePort ¶ added in v0.21.4
func GetPluginName ¶ added in v0.17.0
GetPluginName function is used to get the plugin name required while installing/updating/removing a plugin. External plugins require the repo names to be prefixed(eg: francois2metz/scalingo). Sample input 1: hub.steampipe.io/plugins/francois2metz/scalingo@latest Sample output 1: francois2metz/scalingo Sample input 2: hub.steampipe.io/plugins/turbot/aws@latest Sample output 2: aws
func IsPortBindable ¶
func IsWSL ¶
func IsWSL() bool
IsWSL detects whether app is running in WSL environment refer to: https://github.com/Microsoft/WSL/issues/423#issuecomment-679190758
func JsonCloneToMap ¶ added in v0.19.0
JsonCloneToMap tries to JSON marshal and unmarshal the given data, returning a map[string]any if successful
func ListenAddressesContainsOneOfAddresses ¶ added in v0.21.0
func LocalLoopbackAddresses ¶ added in v0.21.0
func LocalPublicAddresses ¶ added in v0.21.0
func Map ¶
Map returns a new slice where every value is mapped to a new value through the mapper
The mapper is invoked with each element
func MapRange ¶ added in v0.21.0
func MapRange(value int, valueRange RangeConstraint, desiredRange RangeConstraint) int
MapRange Re-maps a number from one range to another.
func MergeMaps ¶ added in v0.17.0
func MergeMaps[M ~map[K]V, K comparable, V any](old, new M) M
MergeMaps merges 'new' onto 'old'. Values existing in old already have precedence Any value existing in new but not old is added to old
func MoveFile ¶
MoveFile moves a file from source to destiantion.
It first attempts the movement using OS primitives (os.Rename) If os.Rename fails, it copies the file byte-by-byte to the destination and then removes the source
func OpenBrowser ¶ added in v0.17.0
https://stackoverflow.com/questions/39320371/how-start-web-server-to-open-page-in-browser-in-golang
func Partition ¶
Partition splits the array of elements into two groups: the left partition contains elements that the predicate returns `true` for. the right partition contains elements that the predicate returns `false` for.
The predicate is invoked with each element
func PidExists ¶
PidExists scans through the list of PIDs in the system and checks for the `targetPID`.
PidExists uses iteration, instead of signalling, since we have observed that signalling does not always work reliably when the destination of the signal is a child of the source of the signal - which may be the case then starting implicit services
func PluginFQNToSchemaName ¶ added in v0.19.0
PluginFQNToSchemaName convert a full plugin name to a schema name schemas in postgres are limited to 63 chars - the name may be longer than this, in which case trim the length and add a hash to the end to make unique
func PrettifyJsonFromReader ¶ added in v0.17.0
func RemoveDirectoryContents ¶
func RemoveElementFromSlice ¶ added in v0.20.0
RemoveElementFromSlice takes a slice of strings and an index to remove, and returns a new slice with the specified element removed.
func SafeIntEqual ¶
func SafeStringsEqual ¶
func SafeStringsEqual(s1, s2 interface{}) bool
func SendRequest ¶
func SendRequest(ctx context.Context, signature string, method string, sendRequestTo url.URL, payload io.Reader) (*http.Response, error)
SendRequest makes a http call to the given URL
func ShouldProfile ¶ added in v0.22.1
func ShouldProfile() bool
func SliceToLookup ¶ added in v0.20.0
func SliceToLookup[K comparable](src []K) map[K]struct{}
func SortedMapKeys ¶ added in v0.17.0
func ToIntegerPointer ¶
ToIntegerPointer converts an integer into its pointer
func ToStringPointer ¶
ToStringPointer converts a string into its pointer
func TrimSchemaName ¶ added in v0.19.0
func UnderlyingArch ¶
UnderlyingArch detects the underlying architecture(amd64/arm64) of the system we need this to detect the underlying architecture to install the correct FDW package
func UnquoteStringArray ¶ added in v0.17.0
UnquoteStringArray removes quote marks from elements of string array
Types ¶
type RangeConstraint ¶ added in v0.21.0
type RangeConstraint struct {
// contains filtered or unexported fields
}
func NewRangeConstraint ¶ added in v0.21.0
func NewRangeConstraint(minimum int, maximum int) RangeConstraint
func (*RangeConstraint) Constrain ¶ added in v0.21.0
func (r *RangeConstraint) Constrain(value int) int
Constrain a number to be within a range.