Documentation ¶
Index ¶
- Variables
- func IsIsolated(s *specs.Spec) bool
- func IsJobContainer(s *specs.Spec) bool
- func IsLCOW(s *specs.Spec) bool
- func IsWCOW(s *specs.Spec) bool
- func ParseAnnotationCommaSeparated(annotation string, annotations map[string]string) []string
- func ParseAnnotationCommaSeparatedUint32(ctx context.Context, annotations map[string]string, annotation string, ...) []uint32
- func ParseAnnotationsBool(ctx context.Context, a map[string]string, key string, def bool) bool
- func ParseAnnotationsDisableGMSA(ctx context.Context, s *specs.Spec) bool
- func ParseAnnotationsInt32(ctx context.Context, a map[string]string, key string, def int32) int32
- func ParseAnnotationsNullableBool(ctx context.Context, a map[string]string, key string) *bool
- func ParseAnnotationsString(a map[string]string, key string, def string) string
- func ParseAnnotationsUint32(ctx context.Context, a map[string]string, key string, def uint32) uint32
- func ParseAnnotationsUint64(ctx context.Context, a map[string]string, key string, def uint64) uint64
- func ProcessAnnotations(ctx context.Context, s *specs.Spec) (err error)
- func SandboxAnnotationsPassThrough(podAnnots, containerAnnots map[string]string, vals ...string)
- type KubernetesContainerType
Constants ¶
This section is empty.
Variables ¶
var ErrAnnotationExpansionConflict = errors.New("annotation expansion conflict")
Functions ¶
func IsIsolated ¶
func IsIsolated(s *specs.Spec) bool
IsIsolated checks if `s` is hypervisor isolated.
func IsJobContainer ¶ added in v0.9.0
func IsJobContainer(s *specs.Spec) bool
IsJobContainer checks if `s` is asking for a Windows job container.
func IsWCOW ¶
func IsWCOW(s *specs.Spec) bool
IsWCOW checks if `s` is a WCOW config (argon OR isolated).
func ParseAnnotationCommaSeparated ¶ added in v0.9.0
ParseAnnotationCommaSeparated searches `annotations` for `annotation` corresponding to a list of comma separated strings
func ParseAnnotationCommaSeparatedUint32 ¶ added in v0.12.0
func ParseAnnotationCommaSeparatedUint32(ctx context.Context, annotations map[string]string, annotation string, def []uint32) []uint32
ParseAnnotationCommaSeparated searches `annotations` for `annotation` corresponding to a list of comma separated strings
func ParseAnnotationsBool ¶ added in v0.10.0
ParseAnnotationsBool searches `a` for `key` and if found verifies that the value is `true` or `false` in any case. If `key` is not found returns `def`.
func ParseAnnotationsDisableGMSA ¶ added in v0.10.0
ParseAnnotationsDisableGMSA searches for the boolean value which specifies if providing a gMSA credential should be disallowed. Returns the value found, if parsable, otherwise returns false otherwise.
func ParseAnnotationsInt32 ¶ added in v0.12.0
ParseAnnotationsInt32 searches `a` for `key` and if found verifies that the value is a 32-bit signed integer. If `key` is not found returns `def`.
func ParseAnnotationsNullableBool ¶ added in v0.12.0
ParseAnnotationsNullableBool searches `a` for `key` and if found verifies that the value is `true` or `false`. If `key` is not found it returns a null pointer. The JSON Marshaller will omit null pointers and will serialize non-null pointers as the value they point at.
func ParseAnnotationsString ¶ added in v0.12.0
ParseAnnotationsString searches `a` for `key`. If `key` is not found returns `def`.
func ParseAnnotationsUint32 ¶ added in v0.12.0
func ParseAnnotationsUint32(ctx context.Context, a map[string]string, key string, def uint32) uint32
ParseAnnotationsUint32 searches `a` for `key` and if found verifies that the value is a 32 bit unsigned integer. If `key` is not found returns `def`.
func ParseAnnotationsUint64 ¶ added in v0.12.0
func ParseAnnotationsUint64(ctx context.Context, a map[string]string, key string, def uint64) uint64
ParseAnnotationsUint64 searches `a` for `key` and if found verifies that the value is a 64 bit unsigned integer. If `key` is not found returns `def`.
func ProcessAnnotations ¶ added in v0.10.0
ProcessAnnotations expands annotations into their corresponding annotation groups.
func SandboxAnnotationsPassThrough ¶ added in v0.10.0
SandboxAnnotationsPassThrough passes through the annotations specified by 'vals' from the sandboxes set of annotations through to every container in the pod. Kubernetes only passes metadata annotations to the RunPodSandbox request, so annotations that are meant to be available for use/checking for individual containers need some way to know they were passed for the pod.
Types ¶
type KubernetesContainerType ¶
type KubernetesContainerType string
KubernetesContainerType defines the valid types of the `annotations.KubernetesContainerType` annotation.
const ( // KubernetesContainerTypeNone is only valid when // `annotations.KubernetesContainerType` is not set. KubernetesContainerTypeNone KubernetesContainerType = "" // KubernetesContainerTypeContainer is valid when // `annotations.KubernetesContainerType == "container"`. KubernetesContainerTypeContainer KubernetesContainerType = "container" // KubernetesContainerTypeSandbox is valid when // `annotations.KubernetesContainerType == "sandbox"`. KubernetesContainerTypeSandbox KubernetesContainerType = "sandbox" )
func GetSandboxTypeAndID ¶
func GetSandboxTypeAndID(specAnnotations map[string]string) (KubernetesContainerType, string, error)
GetSandboxTypeAndID parses `specAnnotations` searching for the `KubernetesContainerTypeAnnotation` and `KubernetesSandboxIDAnnotation` annotations and if found validates the set before returning.