{{- if .Values.crds.managed }} --- apiVersion: apiextensions.k8s.io/v1beta1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.2.9 creationTimestamp: null name: podunavailablebudgets.policy.kruise.io spec: additionalPrinterColumns: - JSONPath: .status.unavailableAllowed description: UnavailableAllowed number of pod unavailable that are currently allowed name: Allowed type: integer - JSONPath: .status.currentAvailable description: CurrentAvailable current number of available pods name: Current type: integer - JSONPath: .status.desiredAvailable description: DesiredAvailable minimum desired number of available pods name: Desired type: integer - JSONPath: .status.totalReplicas description: TotalReplicas total number of pods counted by this budget name: Total type: integer group: policy.kruise.io names: kind: PodUnavailableBudget listKind: PodUnavailableBudgetList plural: podunavailablebudgets shortNames: - pub singular: podunavailablebudget scope: Namespaced subresources: status: {} validation: openAPIV3Schema: description: PodUnavailableBudget is the Schema for the podunavailablebudgets API properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' type: string metadata: type: object spec: description: PodUnavailableBudgetSpec defines the desired state of PodUnavailableBudget properties: maxUnavailable: anyOf: - type: integer - type: string description: Delete pod, evict pod or update pod specification is allowed if at most "maxUnavailable" pods selected by "selector" or "targetRef" are unavailable after the above operation for pod. MaxUnavailable and MinAvailable are mutually exclusive, MaxUnavailable is priority to take effect x-kubernetes-int-or-string: true minAvailable: anyOf: - type: integer - type: string description: Delete pod, evict pod or update pod specification is allowed if at least "minAvailable" pods selected by "selector" or "targetRef" will still be available after the above operation for pod. x-kubernetes-int-or-string: true selector: description: Selector label query over pods managed by the budget properties: matchExpressions: description: matchExpressions is a list of label selector requirements. The requirements are ANDed. items: description: A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values. properties: key: description: key is the label key that the selector applies to. type: string operator: description: operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist. type: string values: description: values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch. items: type: string type: array required: - key - operator type: object type: array matchLabels: additionalProperties: type: string description: matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed. type: object type: object targetRef: description: TargetReference contains enough information to let you identify an workload for PodUnavailableBudget Selector and TargetReference are mutually exclusive, TargetReference is priority to take effect properties: apiVersion: description: API version of the referent. type: string kind: description: Kind of the referent. type: string name: description: Name of the referent. type: string type: object type: object status: description: PodUnavailableBudgetStatus defines the observed state of PodUnavailableBudget properties: currentAvailable: description: CurrentAvailable current number of available pods format: int32 type: integer desiredAvailable: description: DesiredAvailable minimum desired number of available pods format: int32 type: integer disruptedPods: additionalProperties: format: date-time type: string description: DisruptedPods contains information about pods whose eviction or deletion was processed by the API handler but has not yet been observed by the PodUnavailableBudget. type: object observedGeneration: description: Most recent generation observed when updating this PUB status. UnavailableAllowed and other status information is valid only if observedGeneration equals to PUB's object generation. format: int64 type: integer totalReplicas: description: TotalReplicas total number of pods counted by this budget format: int32 type: integer unavailableAllowed: description: UnavailableAllowed number of pod unavailable that are currently allowed format: int32 type: integer unavailablePods: additionalProperties: format: date-time type: string description: UnavailablePods contains information about pods whose specification changed(inplace-update pod), once pod is available(consistent and ready) again, it will be removed from the list. type: object required: - currentAvailable - desiredAvailable - totalReplicas - unavailableAllowed type: object type: object version: v1alpha1 versions: - name: v1alpha1 served: true storage: true status: acceptedNames: kind: "" plural: "" conditions: [] storedVersions: [] {{- end }}