utils

module
v0.0.0-...-4693a02 Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2024 License: Apache-2.0

README

Utils

Build Status GoDoc

A set of Go libraries that provide low-level, kubernetes-independent packages supplementing the Go standard libs.

Purpose

As Kubernetes grows and spins functionality out of its core and into cooperating repositories like apiserver, kubectl, kubeadm, etc., the need arises for leaf repositories to house shared code and avoid cycles in repository relationships.

This repository is intended to hold shared utilities with no Kubernetes dependencies that may be of interest to any Go project. See these instructions for moving an existing package to this repository.

Criteria for adding code here

  • Used by multiple Kubernetes repositories.

  • Complex enough to be worth vendoring, rather than copying (e.g. not 5 LOC).

  • Can be fully exercised by unit tests (e.g. no dependencies on kernels).

  • Has full unit test coverage.

  • Stable, or backward compatible, API, with complete godocs.

  • Go tools compliant (go get, go test, etc.).

  • Very few (ideally zero) external dependencies.

  • No dependencies on any other Kubernetes repository.

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

Directories

Path Synopsis
Package cpuset represents a collection of CPUs in a 'set' data structure.
Package cpuset represents a collection of CPUs in a 'set' data structure.
Package env provides utility functions for using environment variables.
Package env provides utility functions for using environment variables.
Package exec provides an injectable interface and implementations for running commands.
Package exec provides an injectable interface and implementations for running commands.
Package inotify implements a wrapper for the Linux inotify system.
Package inotify implements a wrapper for the Linux inotify system.
internal
third_party/forked/golang/golang-lru
Package lru implements an LRU cache.
Package lru implements an LRU cache.
Package mount defines an interface to mounting filesystems.
Package mount defines an interface to mounting filesystems.
net
ebtables
Package ebtables allows to control the ebtables Linux-based bridging firewall.
Package ebtables allows to control the ebtables Linux-based bridging firewall.
Deprecated: Use functions in k8s.io/utils/ptr instead: ptr.To to obtain a pointer, ptr.Deref to dereference a pointer, ptr.Equal to compare dereferenced pointers.
Deprecated: Use functions in k8s.io/utils/ptr instead: ptr.To to obtain a pointer, ptr.Deref to dereference a pointer, ptr.Equal to compare dereferenced pointers.
slices
Package slices defines various functions useful with slices of string type.
Package slices defines various functions useful with slices of string type.
Package temp provides an interface to handle temporary files and directories.
Package temp provides an interface to handle temporary files and directories.
temptest
Package temptest provides utilities for testing temp files/directories testing.
Package temptest provides utilities for testing temp files/directories testing.
third_party
forked/golang/reflect
Package reflect is a fork of go's standard library reflection package, which allows for deep equal with equality functions defined.
Package reflect is a fork of go's standard library reflection package, which allows for deep equal with equality functions defined.

Jump to

Keyboard shortcuts

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