From 650cc2202a0dddf2f97ea2e46dd4e7febe69d6bd Mon Sep 17 00:00:00 2001
From: Rohit Nayak
Date: Tue, 15 Oct 2024 07:25:47 +0200
Subject: [PATCH 1/4] In the file '101_initial_cluster.yaml', we must use
'vitess/lite:v21.0.0-rc1'
Signed-off-by: Rohit Nayak
---
test/endtoend/operator/101_initial_cluster.yaml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/test/endtoend/operator/101_initial_cluster.yaml b/test/endtoend/operator/101_initial_cluster.yaml
index 14066e01..0328cf25 100644
--- a/test/endtoend/operator/101_initial_cluster.yaml
+++ b/test/endtoend/operator/101_initial_cluster.yaml
@@ -8,11 +8,11 @@ metadata:
name: example
spec:
images:
- vtctld: vitess/lite:v20.0.2
- vtgate: vitess/lite:v20.0.2
- vttablet: vitess/lite:v20.0.2
- vtorc: vitess/lite:v20.0.2
- vtbackup: vitess/lite:v20.0.2
+ vtctld: vitess/lite:v21.0.0-rc1
+ vtgate: vitess/lite:v21.0.0-rc1
+ vttablet: vitess/lite:v21.0.0-rc1
+ vtorc: vitess/lite:v21.0.0-rc1
+ vtbackup: vitess/lite:v21.0.0-rc1
mysqld:
mysql80Compatible: mysql:8.0.30
mysqldExporter: prom/mysqld-exporter:v0.11.0
From 5c754d3b41764a025e65b1d1be0c76a68c8153a0 Mon Sep 17 00:00:00 2001
From: Rohit Nayak
Date: Tue, 15 Oct 2024 07:30:25 +0200
Subject: [PATCH 2/4] Updated operator.yaml with snapshot for 2.14
Signed-off-by: Rohit Nayak
---
test/endtoend/operator/operator.yaml | 359 +++++++++++++++++----------
1 file changed, 234 insertions(+), 125 deletions(-)
diff --git a/test/endtoend/operator/operator.yaml b/test/endtoend/operator/operator.yaml
index cec2558f..0cd6071c 100644
--- a/test/endtoend/operator/operator.yaml
+++ b/test/endtoend/operator/operator.yaml
@@ -2,8 +2,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: etcdlockservers.planetscale.com
spec:
group: planetscale.com
@@ -61,6 +60,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -90,18 +90,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -132,11 +120,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -145,6 +135,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -164,6 +156,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -202,6 +195,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -233,6 +227,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -252,6 +248,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -279,6 +276,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -330,8 +329,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitessbackups.planetscale.com
spec:
group: planetscale.com
@@ -383,8 +381,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitessbackupschedules.planetscale.com
spec:
group: planetscale.com
@@ -449,6 +446,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -554,8 +553,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitessbackupstorages.planetscale.com
spec:
group: planetscale.com
@@ -720,8 +718,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitesscells.planetscale.com
spec:
group: planetscale.com
@@ -793,6 +790,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -831,6 +829,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -862,6 +861,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -885,6 +886,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -902,6 +904,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -914,6 +917,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -935,6 +946,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -952,6 +964,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -964,6 +977,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -989,6 +1010,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -1109,6 +1132,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1157,6 +1181,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -1186,18 +1211,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -1228,11 +1241,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -1241,6 +1256,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -1260,6 +1277,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1298,6 +1316,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1329,6 +1348,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -1348,6 +1369,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -1375,6 +1397,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -1491,8 +1515,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitessclusters.planetscale.com
spec:
group: planetscale.com
@@ -1523,6 +1546,7 @@ spec:
enum:
- builtin
- xtrabackup
+ - mysqlshell
type: string
locations:
items:
@@ -1679,6 +1703,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -1798,6 +1824,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1836,6 +1863,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -1867,6 +1895,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -1890,6 +1920,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -1907,6 +1938,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -1919,6 +1951,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -1940,6 +1980,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
type: object
httpGet:
properties:
@@ -1957,6 +1998,7 @@ spec:
- value
type: object
type: array
+ x-kubernetes-list-type: atomic
path:
type: string
port:
@@ -1969,6 +2011,14 @@ spec:
required:
- port
type: object
+ sleep:
+ properties:
+ seconds:
+ format: int64
+ type: integer
+ required:
+ - seconds
+ type: object
tcpSocket:
properties:
host:
@@ -1994,6 +2044,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -2117,6 +2169,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -2146,18 +2199,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -2188,11 +2229,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2201,6 +2244,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -2220,6 +2265,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2258,6 +2304,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2289,6 +2336,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -2308,6 +2357,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2335,6 +2385,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -2441,6 +2493,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -2470,18 +2523,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -2512,11 +2553,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2525,6 +2568,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -2544,6 +2589,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2582,6 +2628,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -2613,6 +2660,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -2632,6 +2681,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2659,6 +2709,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -2725,6 +2777,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -2777,6 +2830,14 @@ spec:
mysql80Compatible:
type: string
type: object
+ mysqldExporter:
+ type: string
+ vtbackup:
+ type: string
+ vtorc:
+ type: string
+ vttablet:
+ type: string
type: object
name:
maxLength: 63
@@ -2846,6 +2907,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -2875,18 +2937,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -2917,11 +2967,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -2930,6 +2982,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -2991,6 +3045,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3029,6 +3084,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3056,6 +3112,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -3080,6 +3138,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3116,6 +3176,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3179,6 +3241,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3284,6 +3348,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -3313,18 +3378,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -3355,11 +3408,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -3368,6 +3423,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -3429,6 +3486,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3467,6 +3525,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3494,6 +3553,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -3518,6 +3579,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3554,6 +3617,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3617,6 +3682,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3696,6 +3763,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3734,6 +3802,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3765,6 +3834,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -3785,6 +3856,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -3897,6 +3970,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3935,6 +4009,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -3966,6 +4041,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -3989,6 +4066,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4046,6 +4125,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4088,6 +4169,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4126,6 +4208,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4157,6 +4240,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -4206,6 +4291,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4349,8 +4436,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitesskeyspaces.planetscale.com
spec:
group: planetscale.com
@@ -4540,6 +4626,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -4634,6 +4721,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -4663,18 +4751,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -4705,11 +4781,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -4718,6 +4796,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -4779,6 +4859,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4817,6 +4898,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -4844,6 +4926,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -4868,6 +4952,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4904,6 +4990,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -4967,6 +5055,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5072,6 +5162,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -5101,18 +5192,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -5143,11 +5222,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -5156,6 +5237,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -5217,6 +5300,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -5255,6 +5339,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -5282,6 +5367,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -5306,6 +5393,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5342,6 +5431,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5405,6 +5496,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5518,6 +5611,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -5556,6 +5650,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -5587,6 +5682,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -5607,6 +5704,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -5784,8 +5883,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
- controller-gen.kubebuilder.io/version: v0.11.3
- creationTimestamp: null
+ controller-gen.kubebuilder.io/version: v0.16.1
name: vitessshards.planetscale.com
spec:
group: planetscale.com
@@ -5984,6 +6082,7 @@ spec:
items:
properties:
name:
+ default: ""
type: string
type: object
x-kubernetes-map-type: atomic
@@ -6052,6 +6151,7 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
dataSource:
properties:
apiGroup:
@@ -6081,18 +6181,6 @@ spec:
type: object
resources:
properties:
- claims:
- items:
- properties:
- name:
- type: string
- required:
- - name
- type: object
- type: array
- x-kubernetes-list-map-keys:
- - name
- x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
@@ -6123,11 +6211,13 @@ spec:
items:
type: string
type: array
+ x-kubernetes-list-type: atomic
required:
- key
- operator
type: object
type: array
+ x-kubernetes-list-type: atomic
matchLabels:
additionalProperties:
type: string
@@ -6136,6 +6226,8 @@ spec:
x-kubernetes-map-type: atomic
storageClassName:
type: string
+ volumeAttributesClassName:
+ type: string
volumeMode:
type: string
volumeName:
@@ -6197,6 +6289,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6235,6 +6328,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6262,6 +6356,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -6286,6 +6382,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -6322,6 +6420,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -6385,6 +6485,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -6483,6 +6585,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6521,6 +6624,7 @@ spec:
key:
type: string
name:
+ default: ""
type: string
optional:
type: boolean
@@ -6552,6 +6656,8 @@ spec:
type: string
readOnly:
type: boolean
+ recursiveReadOnly:
+ type: string
subPath:
type: string
subPathExpr:
@@ -6572,6 +6678,8 @@ spec:
properties:
name:
type: string
+ request:
+ type: string
required:
- name
type: object
@@ -6885,7 +6993,8 @@ spec:
fieldPath: metadata.name
- name: OPERATOR_NAME
value: vitess-operator
- image: planetscale/vitess-operator:v2.13.1
+ image: vitess-operator-pr:latest
+ imagePullPolicy: Never
name: vitess-operator
resources:
limits:
From b076d084a67b6fe3b465eff4112e969459c680d0 Mon Sep 17 00:00:00 2001
From: Rohit Nayak
Date: Tue, 15 Oct 2024 07:35:40 +0200
Subject: [PATCH 3/4] Misc changes for 2.14
Signed-off-by: Rohit Nayak
---
test/endtoend/operator/operator.yaml | 3 +--
test/endtoend/upgrade_test.sh | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/test/endtoend/operator/operator.yaml b/test/endtoend/operator/operator.yaml
index 0cd6071c..79eecd9e 100644
--- a/test/endtoend/operator/operator.yaml
+++ b/test/endtoend/operator/operator.yaml
@@ -6993,8 +6993,7 @@ spec:
fieldPath: metadata.name
- name: OPERATOR_NAME
value: vitess-operator
- image: vitess-operator-pr:latest
- imagePullPolicy: Never
+ image: planetscale/vitess-operator:v2.14.0-rc1
name: vitess-operator
resources:
limits:
diff --git a/test/endtoend/upgrade_test.sh b/test/endtoend/upgrade_test.sh
index 618d846e..f1c47413 100755
--- a/test/endtoend/upgrade_test.sh
+++ b/test/endtoend/upgrade_test.sh
@@ -245,7 +245,7 @@ killall kubectl
setupKubectlAccessForCI
get_started "operator.yaml" "101_initial_cluster.yaml"
-verifyVtGateVersion "20.0.2"
+verifyVtGateVersion "21.0.0"
checkSemiSyncSetup
# Initially too durability policy should be specified
verifyDurabilityPolicy "commerce" "semi_sync"
From 2d96029191f3be02338589852fc525bbd78a148c Mon Sep 17 00:00:00 2001
From: Florent Poinsard
Date: Tue, 15 Oct 2024 13:34:51 -0600
Subject: [PATCH 4/4] Use proper vtctldclient version in test and re-gen docs
Signed-off-by: Florent Poinsard
---
docs/api.md | 170 ++++++++++++++++++++++++++++++++++++-
tools/get-e2e-test-deps.sh | 4 +-
2 files changed, 171 insertions(+), 3 deletions(-)
diff --git a/docs/api.md b/docs/api.md
index 8573ca14..a43f0b7d 100644
--- a/docs/api.md
+++ b/docs/api.md
@@ -504,6 +504,80 @@ VitessClusterStatus
+AutoscalerSpec
+
+
+(Appears on:
+VitessCellGatewaySpec)
+
+
+
AutoscalerSpec defines the vtgate’s pod autoscaling specification.
+
+
+
+
+Field |
+Description |
+
+
+
+
+
+minReplicas
+
+int32
+
+ |
+
+(Optional)
+ MinReplicas is the minimum number of instances of vtgate to run in
+this cell when autoscaling is enabled.
+ |
+
+
+
+maxReplicas
+
+int32
+
+ |
+
+ MaxReplicas is the maximum number of instances of vtgate to run in
+this cell when autoscaling is enabled.
+ |
+
+
+
+metrics
+
+
+[]Kubernetes autoscaling/v2.MetricSpec
+
+
+ |
+
+(Optional)
+ Metrics is meant to provide a customizable way to configure HPA metrics.
+currently the only supported custom metrics is type=Pod.
+Use TargetCPUUtilization or TargetMemoryUtilization instead if scaling on these common resource metrics.
+ |
+
+
+
+behavior
+
+
+Kubernetes autoscaling/v2.HorizontalPodAutoscalerBehavior
+
+
+ |
+
+(Optional)
+ Behavior specifies the scaling behavior of the target in both Up and Down directions.
+ |
+
+
+
AzblobBackupLocation
@@ -3335,6 +3409,21 @@ int32
+autoscaler
+
+
+AutoscalerSpec
+
+
+ |
+
+(Optional)
+ Autoscaler specifies the pod autoscaling configuration to use
+for the vtgate workload.
+ |
+
+
+
resources
@@ -3612,6 +3701,30 @@ string
ServiceName is the name of the Service for this cell’s vtgate.
|
+
+
+labelSelector
+
+string
+
+ |
+
+ LabelSelector is required by the Scale subresource, which is used by
+HorizontalPodAutoscaler when reading pod metrics.
+ |
+
+
+
+replicas
+
+int32
+
+ |
+
+ Replicas is required by the Scale subresource, which is used by
+HorizontalPodAutoscaler to determine the current number of replicas.
+ |
+
VitessCellImages
@@ -6549,7 +6662,18 @@ operation, after which the source keyspace is destroyed.
VitessKeyspaceTemplateImages specifies user-definable container images to
-use for this keyspace.
+use for this keyspace. The images defined here by the user will override
+those defined at the top-level in VitessCluster.spec.images.
+While this field allows you to set a different Vitess version for some
+components than the version defined at the top level, it is important to
+note that Vitess only ensures compatibility between one version and the
+next and previous one. For instance: N is only guaranteed to be compatible
+with N+1 and N-1. Do be careful when specifying multiple versions across
+your cluster so that they respect this compatibility rule.
+Note: this structure is a copy of VitessKeyspaceImages, once we have gotten
+rid of MysqldImage and replaced it by MysqldImageNew (planned for v2.15), we
+should be able to remove VitessKeyspaceTemplateImages entirely and just use
+VitessKeyspaceImages instead as it contains exactly the same fields.
@@ -6561,6 +6685,39 @@ use for this keyspace.
+vttablet
+
+string
+
+ |
+
+ Vttablet is the container image (including version tag) to use for Vitess Tablet instances.
+ |
+
+
+
+vtorc
+
+string
+
+ |
+
+ Vtorc is the container image (including version tag) to use for Vitess Orchestrator instances.
+ |
+
+
+
+vtbackup
+
+string
+
+ |
+
+ Vtbackup is the container image (including version tag) to use for Vitess Backup jobs.
+ |
+
+
+
mysqld
@@ -6575,6 +6732,17 @@ compatible with. Only one flavor image may be provided at a time.
mysqld running alongside each tablet.
|
+
+
+mysqldExporter
+
+string
+
+ |
+
+ MysqldExporter specifies the container image for mysqld-exporter.
+ |
+
VitessKeyspaceTurndownPolicy
diff --git a/tools/get-e2e-test-deps.sh b/tools/get-e2e-test-deps.sh
index c74d2ba6..c0cadb19 100755
--- a/tools/get-e2e-test-deps.sh
+++ b/tools/get-e2e-test-deps.sh
@@ -40,8 +40,8 @@ fi
if ! command -v vtctldclient &> /dev/null
then
echo "Downloading vtctldclient..."
- version=20.0.2
- file=vitess-${version}-2592c59.tar.gz
+ version=21.0.0-rc1
+ file=vitess-${version}-7908b43.tar.gz
wget https://github.com/vitessio/vitess/releases/download/v${version}/${file}
tar -xzf ${file}
cd ${file/.tar.gz/}