UNPKG

@soft-stech/fleet

Version:
917 lines 193 kB
import { z } from "zod"; /** * Cluster corresponds to a Kubernetes cluster. Fleet deploys bundles to targeted clusters. * Clusters to which Fleet deploys manifests are referred to as downstream * clusters. In the single cluster use case, the Fleet manager Kubernetes * cluster is both the manager and downstream cluster at the same time. */ export declare const IClusterSchema: z.ZodObject<{ /** * 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 */ apiVersion: z.ZodLiteral<"fleet.cattle.io/v1alpha1">; /** * 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 */ kind: z.ZodLiteral<"Cluster">; metadata: z.ZodOptional<z.ZodObject<{ annotations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; creationTimestamp: z.ZodOptional<z.ZodNullable<z.ZodString>>; deletionGracePeriodSeconds: z.ZodOptional<z.ZodNumber>; deletionTimestamp: z.ZodOptional<z.ZodNullable<z.ZodString>>; finalizers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; generateName: z.ZodOptional<z.ZodString>; generation: z.ZodOptional<z.ZodNumber>; labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; managedFields: z.ZodOptional<z.ZodArray<z.ZodObject<{ apiVersion: z.ZodOptional<z.ZodString>; fieldsType: z.ZodOptional<z.ZodString>; fieldsV1: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>; manager: z.ZodOptional<z.ZodString>; operation: z.ZodOptional<z.ZodString>; subresource: z.ZodOptional<z.ZodString>; time: z.ZodOptional<z.ZodNullable<z.ZodString>>; }, "strip", z.ZodTypeAny, { apiVersion?: string | undefined; fieldsType?: string | undefined; fieldsV1?: {} | undefined; manager?: string | undefined; operation?: string | undefined; subresource?: string | undefined; time?: string | null | undefined; }, { apiVersion?: string | undefined; fieldsType?: string | undefined; fieldsV1?: {} | undefined; manager?: string | undefined; operation?: string | undefined; subresource?: string | undefined; time?: string | null | undefined; }>, "many">>; /** * A list of node selector requirements by node's labels. */ name: z.ZodOptional<z.ZodString>; namespace: z.ZodOptional<z.ZodString>; ownerReferences: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * A list of node selector requirements by node's fields. */ apiVersion: z.ZodString; blockOwnerDeletion: z.ZodOptional<z.ZodBoolean>; controller: z.ZodOptional<z.ZodBoolean>; kind: z.ZodString; name: z.ZodString; uid: z.ZodString; /** * The label key that the selector applies to. */ }, "strip", z.ZodTypeAny, { apiVersion: string; kind: string; name: string; uid: string; blockOwnerDeletion?: boolean | undefined; /** * Represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. */ controller?: boolean | undefined; }, { apiVersion: string; kind: string; name: string; uid: string; blockOwnerDeletion?: boolean | undefined; controller?: boolean | undefined; }>, "many">>; resourceVersion: z.ZodOptional<z.ZodString>; selfLink: z.ZodOptional<z.ZodString>; uid: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { name?: string | undefined; uid?: string | undefined; resourceVersion?: string | undefined; selfLink?: string | undefined; annotations?: Record<string, string> | undefined; creationTimestamp?: string | null | undefined; deletionGracePeriodSeconds?: number | undefined; deletionTimestamp?: string | null | undefined; finalizers?: string[] | undefined; generateName?: string | undefined; generation?: number | undefined; labels?: Record<string, string> | undefined; managedFields?: { apiVersion?: string | undefined; fieldsType?: string | undefined; fieldsV1?: {} | undefined; manager?: string | undefined; operation?: string | undefined; subresource?: string | undefined; time?: string | null | undefined; }[] | undefined; /** * A label query over a set of resources, in this case pods. * If it's null, this PodAffinityTerm matches with no Pods. */ namespace?: string | undefined; ownerReferences?: { apiVersion: string; kind: string; name: string; uid: string; blockOwnerDeletion?: boolean | undefined; controller?: boolean | undefined; }[] | undefined; /** * matchExpressions is a list of label selector requirements. The requirements are ANDed. */ }, { name?: string | undefined; uid?: string | undefined; resourceVersion?: string | undefined; selfLink?: string | undefined; annotations?: Record<string, string> | undefined; creationTimestamp?: string | null | undefined; /** * key is the label key that the selector applies to. */ deletionGracePeriodSeconds?: number | undefined; deletionTimestamp?: string | null | undefined; finalizers?: string[] | undefined; generateName?: string | undefined; generation?: number | undefined; /** * operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ labels?: Record<string, string> | undefined; managedFields?: { apiVersion?: string | undefined; fieldsType?: string | undefined; fieldsV1?: {} | undefined; manager?: string | undefined; operation?: string | undefined; subresource?: string | undefined; /** * 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. */ time?: string | null | undefined; }[] | undefined; namespace?: string | undefined; ownerReferences?: { apiVersion: string; kind: string; name: string; uid: string; blockOwnerDeletion?: boolean | undefined; controller?: boolean | undefined; }[] | undefined; }>>; spec: z.ZodOptional<z.ZodObject<{ /** * AgentAffinity overrides the default affinity for the cluster's agent * deployment. If this value is nil the default affinity is used. */ agentAffinity: z.ZodOptional<z.ZodObject<{ /** * Describes node affinity scheduling rules for the pod. */ nodeAffinity: z.ZodOptional<z.ZodObject<{ /** * The scheduler will prefer to schedule pods to nodes that satisfy * the affinity expressions specified by this field, but it may choose * a node that violates one or more of the expressions. The node that is * most preferred is the one with the greatest sum of weights, i.e. * for each node that meets all of the scheduling requirements (resource * request, requiredDuringScheduling affinity expressions, etc.), * compute a sum by iterating through the elements of this field and adding * "weight" to the sum if the node matches the corresponding matchExpressions; the * node(s) with the highest sum are the most preferred. */ preferredDuringSchedulingIgnoredDuringExecution: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * A node selector term, associated with the corresponding weight. */ preference: z.ZodObject<{ /** * A list of node selector requirements by node's labels. */ matchExpressions: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * The label key that the selector applies to. */ key: z.ZodString; /** * Represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. */ operator: z.ZodString; /** * 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. If the operator is Gt or Lt, the values * array must have a single element, which will be interpreted as an integer. * This array is replaced during a strategic merge patch. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; /** * A list of node selector requirements by node's fields. */ matchFields: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * The label key that the selector applies to. */ key: z.ZodString; /** * Represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. */ operator: z.ZodString; /** * 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. If the operator is Gt or Lt, the values * array must have a single element, which will be interpreted as an integer. * This array is replaced during a strategic merge patch. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; }, "strip", z.ZodTypeAny, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }>; /** * Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100. * @format int32 */ weight: z.ZodNumber; }, "strip", z.ZodTypeAny, { preference: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }; weight: number; }, { preference: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }; weight: number; }>, "many">>; /** * If the affinity requirements specified by this field are not met at * scheduling time, the pod will not be scheduled onto the node. * If the affinity requirements specified by this field cease to be met * at some point during pod execution (e.g. due to an update), the system * may or may not try to eventually evict the pod from its node. */ requiredDuringSchedulingIgnoredDuringExecution: z.ZodOptional<z.ZodObject<{ /** * Required. A list of node selector terms. The terms are ORed. */ nodeSelectorTerms: z.ZodArray<z.ZodObject<{ /** * A list of node selector requirements by node's labels. */ matchExpressions: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * The label key that the selector applies to. */ key: z.ZodString; /** * Represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. */ operator: z.ZodString; /** * 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. If the operator is Gt or Lt, the values * array must have a single element, which will be interpreted as an integer. * This array is replaced during a strategic merge patch. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; /** * A list of node selector requirements by node's fields. */ matchFields: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * The label key that the selector applies to. */ key: z.ZodString; /** * Represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt. */ operator: z.ZodString; /** * 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. If the operator is Gt or Lt, the values * array must have a single element, which will be interpreted as an integer. * This array is replaced during a strategic merge patch. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; }, "strip", z.ZodTypeAny, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }>, "many">; }, "strip", z.ZodTypeAny, { nodeSelectorTerms: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }[]; }, { nodeSelectorTerms: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }[]; }>>; }, "strip", z.ZodTypeAny, { preferredDuringSchedulingIgnoredDuringExecution?: { preference: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }; weight: number; }[] | undefined; requiredDuringSchedulingIgnoredDuringExecution?: { nodeSelectorTerms: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }[]; } | undefined; }, { preferredDuringSchedulingIgnoredDuringExecution?: { preference: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }; weight: number; }[] | undefined; requiredDuringSchedulingIgnoredDuringExecution?: { nodeSelectorTerms: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchFields?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; }[]; } | undefined; }>>; /** * Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). */ podAffinity: z.ZodOptional<z.ZodObject<{ /** * The scheduler will prefer to schedule pods to nodes that satisfy * the affinity expressions specified by this field, but it may choose * a node that violates one or more of the expressions. The node that is * most preferred is the one with the greatest sum of weights, i.e. * for each node that meets all of the scheduling requirements (resource * request, requiredDuringScheduling affinity expressions, etc.), * compute a sum by iterating through the elements of this field and adding * "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the * node(s) with the highest sum are the most preferred. */ preferredDuringSchedulingIgnoredDuringExecution: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * Required. A pod affinity term, associated with the corresponding weight. */ podAffinityTerm: z.ZodObject<{ /** * A label query over a set of resources, in this case pods. * If it's null, this PodAffinityTerm matches with no Pods. */ labelSelector: z.ZodOptional<z.ZodObject<{ /** * matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * key is the label key that the selector applies to. */ key: z.ZodString; /** * operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: z.ZodString; /** * 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. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; /** * 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. */ matchLabels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; }, "strip", z.ZodTypeAny, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }>>; /** * MatchLabelKeys is a set of pod label keys to select which pods will * be taken into consideration. The keys are used to lookup values from the * incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` * to select the group of existing pods which pods will be taken into consideration * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming * pod labels will be ignored. The default value is empty. * The same key is forbidden to exist in both matchLabelKeys and labelSelector. * Also, matchLabelKeys cannot be set when labelSelector isn't set. * This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. */ matchLabelKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** * MismatchLabelKeys is a set of pod label keys to select which pods will * be taken into consideration. The keys are used to lookup values from the * incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` * to select the group of existing pods which pods will be taken into consideration * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming * pod labels will be ignored. The default value is empty. * The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. * Also, mismatchLabelKeys cannot be set when labelSelector isn't set. * This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. */ mismatchLabelKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** * A label query over the set of namespaces that the term applies to. * The term is applied to the union of the namespaces selected by this field * and the ones listed in the namespaces field. * null selector and null or empty namespaces list means "this pod's namespace". * An empty selector ({}) matches all namespaces. */ namespaceSelector: z.ZodOptional<z.ZodObject<{ /** * matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * key is the label key that the selector applies to. */ key: z.ZodString; /** * operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: z.ZodString; /** * 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. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; /** * 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. */ matchLabels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; }, "strip", z.ZodTypeAny, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }>>; /** * namespaces specifies a static list of namespace names that the term applies to. * The term is applied to the union of the namespaces listed in this field * and the ones selected by namespaceSelector. * null or empty namespaces list and null namespaceSelector means "this pod's namespace". */ namespaces: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** * This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching * the labelSelector in the specified namespaces, where co-located is defined as running on a node * whose value of the label with key topologyKey matches that of any node on which any of the * selected pods is running. * Empty topologyKey is not allowed. */ topologyKey: z.ZodString; }, "strip", z.ZodTypeAny, { topologyKey: string; namespaceSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; labelSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; matchLabelKeys?: string[] | undefined; mismatchLabelKeys?: string[] | undefined; namespaces?: string[] | undefined; }, { topologyKey: string; namespaceSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; labelSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; matchLabelKeys?: string[] | undefined; mismatchLabelKeys?: string[] | undefined; namespaces?: string[] | undefined; }>; /** * weight associated with matching the corresponding podAffinityTerm, * in the range 1-100. * @format int32 */ weight: z.ZodNumber; }, "strip", z.ZodTypeAny, { weight: number; podAffinityTerm: { topologyKey: string; namespaceSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; labelSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; matchLabelKeys?: string[] | undefined; mismatchLabelKeys?: string[] | undefined; namespaces?: string[] | undefined; }; }, { weight: number; podAffinityTerm: { topologyKey: string; namespaceSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; labelSelector?: { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; } | undefined; matchLabelKeys?: string[] | undefined; mismatchLabelKeys?: string[] | undefined; namespaces?: string[] | undefined; }; }>, "many">>; /** * If the affinity requirements specified by this field are not met at * scheduling time, the pod will not be scheduled onto the node. * If the affinity requirements specified by this field cease to be met * at some point during pod execution (e.g. due to a pod label update), the * system may or may not try to eventually evict the pod from its node. * When there are multiple elements, the lists of nodes corresponding to each * podAffinityTerm are intersected, i.e. all terms must be satisfied. */ requiredDuringSchedulingIgnoredDuringExecution: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * A label query over a set of resources, in this case pods. * If it's null, this PodAffinityTerm matches with no Pods. */ labelSelector: z.ZodOptional<z.ZodObject<{ /** * matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * key is the label key that the selector applies to. */ key: z.ZodString; /** * operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: z.ZodString; /** * 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. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; /** * 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. */ matchLabels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; }, "strip", z.ZodTypeAny, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }>>; /** * MatchLabelKeys is a set of pod label keys to select which pods will * be taken into consideration. The keys are used to lookup values from the * incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)` * to select the group of existing pods which pods will be taken into consideration * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming * pod labels will be ignored. The default value is empty. * The same key is forbidden to exist in both matchLabelKeys and labelSelector. * Also, matchLabelKeys cannot be set when labelSelector isn't set. * This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. */ matchLabelKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** * MismatchLabelKeys is a set of pod label keys to select which pods will * be taken into consideration. The keys are used to lookup values from the * incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)` * to select the group of existing pods which pods will be taken into consideration * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming * pod labels will be ignored. The default value is empty. * The same key is forbidden to exist in both mismatchLabelKeys and labelSelector. * Also, mismatchLabelKeys cannot be set when labelSelector isn't set. * This is an alpha field and requires enabling MatchLabelKeysInPodAffinity feature gate. */ mismatchLabelKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** * A label query over the set of namespaces that the term applies to. * The term is applied to the union of the namespaces selected by this field * and the ones listed in the namespaces field. * null selector and null or empty namespaces list means "this pod's namespace". * An empty selector ({}) matches all namespaces. */ namespaceSelector: z.ZodOptional<z.ZodObject<{ /** * matchExpressions is a list of label selector requirements. The requirements are ANDed. */ matchExpressions: z.ZodOptional<z.ZodArray<z.ZodObject<{ /** * key is the label key that the selector applies to. */ key: z.ZodString; /** * operator represents a key's relationship to a set of values. * Valid operators are In, NotIn, Exists and DoesNotExist. */ operator: z.ZodString; /** * 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. */ values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { key: string; operator: string; values?: string[] | undefined; }, { key: string; operator: string; values?: string[] | undefined; }>, "many">>; /** * 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. */ matchLabels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>; }, "strip", z.ZodTypeAny, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }, { matchExpressions?: { key: string; operator: string; values?: string[] | undefined; }[] | undefined; matchLabels?: Record<string, string> | undefined; }>>; /** * name