Skip to main content

lib/k8s/podGroup

Classes​

ClassDescription
PodGroup-

Interfaces​

InterfaceDescription
KubePodGroupThis is the base interface for all Kubernetes resources, i.e. it contains fields that all Kubernetes resources have.
PodGroupDisruptionModeHow v1alpha3 and v1beta1 describe which pods a disruption affects. Exactly one field is set: single matches the v1alpha2 'Pod' mode, all matches 'PodGroup'.
PodGroupResourceClaim-
PodGroupSchedulingConstraintsScheduling constraints copied from a PodGroupTemplate.
PodGroupSchedulingPolicyHow the pods of a group are scheduled. Exactly one field is set: gang for all-or-nothing semantics, basic for standard Kubernetes scheduling.
PodGroupSpec-
PodGroupTemplateReferenceHow v1alpha2 references the Workload a group was templated from.
PodGroupWorkloadReferenceHow v1alpha3 and v1beta1 reference the Workload a group was templated from.

Variables​

VariableDescription
POD_GROUP_INITIALLY_SCHEDULED_CONDITIONThe same condition as served by v1alpha3 and v1beta1.
POD_GROUP_SCHEDULED_CONDITIONCondition reporting whether the group's scheduling requirement has been satisfied. Served by v1alpha2. Later versions renamed it, see the constant below.

Functions​

FunctionDescription
getDisruptionModeHuman readable disruption mode across API versions. v1alpha2 uses the strings 'Pod'/'PodGroup'; v1alpha3 and v1beta1 use an object with a single or all field. Both describe the same choice: disrupt one pod at a time, or the whole group together.
getSchedulingPolicyKindHuman readable name of the policy a scheduling policy describes. Takes the shared shape of the policy union so that composite templates can use it too.