324 lines
17 KiB
YAML
324 lines
17 KiB
YAML
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.4.0
|
|
creationTimestamp: null
|
|
name: propagationpolicies.propagationstrategy.karmada.io
|
|
spec:
|
|
group: propagationstrategy.karmada.io
|
|
names:
|
|
kind: PropagationPolicy
|
|
listKind: PropagationPolicyList
|
|
plural: propagationpolicies
|
|
singular: propagationpolicy
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: PropagationPolicy represents the policy that propagates a group
|
|
of resources to one or more clusters.
|
|
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: Spec represents the desired behavior of PropagationPolicy.
|
|
properties:
|
|
association:
|
|
description: Association tells if relevant resources should be selected
|
|
automatically. e.g. a ConfigMap referred by a Deployment. default
|
|
false.
|
|
type: boolean
|
|
placement:
|
|
description: Placement represents the rule for select clusters to
|
|
propagate resources.
|
|
properties:
|
|
clusterAffinity:
|
|
description: ClusterAffinity represents scheduling restrictions
|
|
to a certain set of clusters. If not set, any cluster can be
|
|
scheduling candidate.
|
|
properties:
|
|
clusterNames:
|
|
description: ClusterNames is the list of clusters to be selected.
|
|
items:
|
|
type: string
|
|
type: array
|
|
exclude:
|
|
description: ExcludedClusters is the list of clusters to be
|
|
ignored.
|
|
items:
|
|
type: string
|
|
type: array
|
|
fieldSelector:
|
|
description: FieldSelector is a filter to select member clusters
|
|
by fields. If non-nil and non-empty, only the clusters match
|
|
this filter will be selected.
|
|
properties:
|
|
matchExpressions:
|
|
description: A list of field selector requirements.
|
|
items:
|
|
description: A node selector requirement is a selector
|
|
that contains values, a key, and an operator that
|
|
relates the key and values.
|
|
properties:
|
|
key:
|
|
description: The label key that the selector applies
|
|
to.
|
|
type: string
|
|
operator:
|
|
description: Represents a key's relationship to
|
|
a set of values. Valid operators are In, NotIn,
|
|
Exists, DoesNotExist. Gt, and Lt.
|
|
type: string
|
|
values:
|
|
description: 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.
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- key
|
|
- operator
|
|
type: object
|
|
type: array
|
|
type: object
|
|
labelSelector:
|
|
description: LabelSelector is a filter to select member clusters
|
|
by labels. If non-nil and non-empty, only the clusters match
|
|
this filter will be selected.
|
|
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
|
|
type: object
|
|
clusterTolerations:
|
|
description: ClusterTolerations represents the tolerations.
|
|
items:
|
|
description: The pod this Toleration is attached to tolerates
|
|
any taint that matches the triple <key,value,effect> using
|
|
the matching operator <operator>.
|
|
properties:
|
|
effect:
|
|
description: Effect indicates the taint effect to match.
|
|
Empty means match all taint effects. When specified, allowed
|
|
values are NoSchedule, PreferNoSchedule and NoExecute.
|
|
type: string
|
|
key:
|
|
description: Key is the taint key that the toleration applies
|
|
to. Empty means match all taint keys. If the key is empty,
|
|
operator must be Exists; this combination means to match
|
|
all values and all keys.
|
|
type: string
|
|
operator:
|
|
description: Operator represents a key's relationship to
|
|
the value. Valid operators are Exists and Equal. Defaults
|
|
to Equal. Exists is equivalent to wildcard for value,
|
|
so that a pod can tolerate all taints of a particular
|
|
category.
|
|
type: string
|
|
tolerationSeconds:
|
|
description: TolerationSeconds represents the period of
|
|
time the toleration (which must be of effect NoExecute,
|
|
otherwise this field is ignored) tolerates the taint.
|
|
By default, it is not set, which means tolerate the taint
|
|
forever (do not evict). Zero and negative values will
|
|
be treated as 0 (evict immediately) by the system.
|
|
format: int64
|
|
type: integer
|
|
value:
|
|
description: Value is the taint value the toleration matches
|
|
to. If the operator is Exists, the value should be empty,
|
|
otherwise just a regular string.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
spreadConstraints:
|
|
description: SpreadConstraints represents a list of the scheduling
|
|
constraints.
|
|
items:
|
|
description: SpreadConstraint represents the spread constraints
|
|
on resources.
|
|
properties:
|
|
maximumClusters:
|
|
description: Maximum restricts the maximum number of cluster
|
|
units to be selected.
|
|
type: integer
|
|
minimumClusters:
|
|
description: Minimum restricts the minimum number of cluster
|
|
units to be selected.
|
|
type: integer
|
|
spreadByField:
|
|
description: 'SpreadByField represents the field used for
|
|
grouping member clusters into units. Resources will be
|
|
spread among different cluster units. Available field
|
|
for spreading are: region, zone, cluster and provider.'
|
|
type: string
|
|
spreadByLabel:
|
|
description: SpreadByLabel represents the label key used
|
|
for grouping member clusters into units. Resources will
|
|
be spread among different cluster units.
|
|
type: string
|
|
type: object
|
|
type: array
|
|
type: object
|
|
resourceSelector:
|
|
description: ResourceSelectors used to select resources. nil represents
|
|
all resources.
|
|
items:
|
|
description: ResourceSelector the resources will be selected.
|
|
properties:
|
|
apiVersion:
|
|
description: APIVersion represents the API version of the target
|
|
resources.
|
|
type: string
|
|
excludeNamespaces:
|
|
description: ExcludeNamespaces is a list of namespaces that
|
|
the ResourceSelector will ignore. Default is empty, which
|
|
means don't ignore any namespace.
|
|
items:
|
|
type: string
|
|
type: array
|
|
kind:
|
|
description: Kind represents the Kind of the target resources.
|
|
type: string
|
|
labelSelector:
|
|
description: A label query over a set of resources.
|
|
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
|
|
names:
|
|
description: Names restricts a list of referent names that the
|
|
ResourceSelector will only select. Default is empty, which
|
|
means selecting all resources.
|
|
items:
|
|
type: string
|
|
type: array
|
|
namespaces:
|
|
description: Namespaces restricts a list of namespaces that
|
|
the ResourceSelector will only select. If set, only resources
|
|
in the listed namespaces will be selected. Default is empty,
|
|
which means selecting all namespaces.
|
|
items:
|
|
type: string
|
|
type: array
|
|
required:
|
|
- apiVersion
|
|
- kind
|
|
type: object
|
|
type: array
|
|
schedulerName:
|
|
description: SchedulerName represents which scheduler to proceed the
|
|
scheduling. If specified, the policy will be dispatched by specified
|
|
scheduler. If not specified, the policy will be dispatched by default
|
|
scheduler.
|
|
type: string
|
|
type: object
|
|
required:
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|