@@ -213,6 +213,121 @@ spec:
213213 items :
214214 type : object
215215 x-kubernetes-preserve-unknown-fields : true
216+ topologySpreadConstraints :
217+ description : ' Topology spread constraints of a Dedicated
218+ repo host pod. Changing this value causes the repo host
219+ to restart. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/'
220+ items :
221+ description : TopologySpreadConstraint specifies how
222+ to spread matching pods among the given topology.
223+ properties :
224+ labelSelector :
225+ description : LabelSelector is used to find matching
226+ pods. Pods that match this label selector are
227+ counted to determine the number of pods in their
228+ corresponding topology domain.
229+ properties :
230+ matchExpressions :
231+ description : matchExpressions is a list of label
232+ selector requirements. The requirements are
233+ ANDed.
234+ items :
235+ description : A label selector requirement
236+ is a selector that contains values, a key,
237+ and an operator that relates the key and
238+ values.
239+ properties :
240+ key :
241+ description : key is the label key that
242+ the selector applies to.
243+ type : string
244+ operator :
245+ description : operator represents a key's
246+ relationship to a set of values. Valid
247+ operators are In, NotIn, Exists and
248+ DoesNotExist.
249+ type : string
250+ values :
251+ description : values is an array of string
252+ values. If the operator is In or NotIn,
253+ the values array must be non-empty.
254+ If the operator is Exists or DoesNotExist,
255+ the values array must be empty. This
256+ array is replaced during a strategic
257+ merge patch.
258+ items :
259+ type : string
260+ type : array
261+ required :
262+ - key
263+ - operator
264+ type : object
265+ type : array
266+ matchLabels :
267+ additionalProperties :
268+ type : string
269+ description : matchLabels is a map of {key,value}
270+ pairs. A single {key,value} in the matchLabels
271+ map is equivalent to an element of matchExpressions,
272+ whose key field is "key", the operator is
273+ " In" , and the values array contains only "value".
274+ The requirements are ANDed.
275+ type : object
276+ type : object
277+ maxSkew :
278+ description : ' MaxSkew describes the degree to which
279+ pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`,
280+ it is the maximum permitted difference between
281+ the number of matching pods in the target topology
282+ and the global minimum. For example, in a 3-zone
283+ cluster, MaxSkew is set to 1, and pods with the
284+ same labelSelector spread as 1/1/0: | zone1 |
285+ zone2 | zone3 | | P | P | | - if
286+ MaxSkew is 1, incoming pod can only be scheduled
287+ to zone3 to become 1/1/1; scheduling it onto zone1(zone2)
288+ would make the ActualSkew(2-0) on zone1(zone2)
289+ violate MaxSkew(1). - if MaxSkew is 2, incoming
290+ pod can be scheduled onto any zone. When `whenUnsatisfiable=ScheduleAnyway`,
291+ it is used to give higher precedence to topologies
292+ that satisfy it. It'' s a required field. Default
293+ value is 1 and 0 is not allowed.'
294+ format : int32
295+ type : integer
296+ topologyKey :
297+ description : TopologyKey is the key of node labels.
298+ Nodes that have a label with this key and identical
299+ values are considered to be in the same topology.
300+ We consider each <key, value> as a "bucket", and
301+ try to put balanced number of pods into each bucket.
302+ It's a required field.
303+ type : string
304+ whenUnsatisfiable :
305+ description : ' WhenUnsatisfiable indicates how to
306+ deal with a pod if it doesn'' t satisfy the spread
307+ constraint. - DoNotSchedule (default) tells the
308+ scheduler not to schedule it. - ScheduleAnyway
309+ tells the scheduler to schedule the pod in any
310+ location, but giving higher precedence to topologies
311+ that would help reduce the skew. A constraint
312+ is considered "Unsatisfiable" for an incoming
313+ pod if and only if every possible node assigment
314+ for that pod would violate "MaxSkew" on some topology.
315+ For example, in a 3-zone cluster, MaxSkew is set
316+ to 1, and pods with the same labelSelector spread
317+ as 3/1/1: | zone1 | zone2 | zone3 | | P P P | P | P |
318+ If WhenUnsatisfiable is set to DoNotSchedule,
319+ incoming pod can only be scheduled to zone2(zone3)
320+ to become 3/2/1(3/1/2) as ActualSkew(2-1) on zone2(zone3)
321+ satisfies MaxSkew(1). In other words, the cluster
322+ can still be imbalanced, but scheduler won'' t
323+ make it *more* imbalanced. It'' s a required field.'
324+ type : string
325+ required :
326+ - maxSkew
327+ - topologyKey
328+ - whenUnsatisfiable
329+ type : object
330+ type : array
216331 logicalBackupSchedule :
217332 type : string
218333 pattern : ' ^(\d+|\*)(/\d+)?(\s+(\d+|\*)(/\d+)?){4}$'
@@ -221,6 +336,10 @@ spec:
221336 items :
222337 type : string
223338 pattern : ' ^\ *((Mon|Tue|Wed|Thu|Fri|Sat|Sun):(2[0-3]|[01]?\d):([0-5]?\d)|(2[0-3]|[01]?\d):([0-5]?\d))-((Mon|Tue|Wed|Thu|Fri|Sat|Sun):(2[0-3]|[01]?\d):([0-5]?\d)|(2[0-3]|[01]?\d):([0-5]?\d))\ *$'
339+ masterServiceAnnotations :
340+ type : object
341+ additionalProperties :
342+ type : string
224343 nodeAffinity :
225344 type : object
226345 properties :
@@ -318,6 +437,8 @@ spec:
318437 patroni :
319438 type : object
320439 properties :
440+ failsafe_mode :
441+ type : boolean
321442 initdb :
322443 type : object
323444 additionalProperties :
@@ -398,6 +519,10 @@ spec:
398519 replicaLoadBalancer :
399520 type : boolean
400521 description : deprecated
522+ replicaServiceAnnotations :
523+ type : object
524+ additionalProperties :
525+ type : string
401526 resources :
402527 type : object
403528 properties :
@@ -708,6 +833,27 @@ spec:
708833 type : array
709834 items :
710835 type : string
836+ resources :
837+ type : object
838+ properties :
839+ limits :
840+ type : object
841+ properties :
842+ cpu :
843+ type : string
844+ pattern : ' ^(\d+m|\d+(\.\d{1,3})?)$'
845+ memory :
846+ type : string
847+ pattern : ' ^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
848+ requests :
849+ type : object
850+ properties :
851+ cpu :
852+ type : string
853+ pattern : ' ^(\d+m|\d+(\.\d{1,3})?)$'
854+ memory :
855+ type : string
856+ pattern : ' ^(\d+(e\d+)?|\d+(\.\d+)?(e\d+)?[EPTGMK]i?)$'
711857 required :
712858 - image
713859 - repos
0 commit comments