Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
e1bb0fe
feat: add vtadmin specification that the user will provided and modif…
GuptaManan100 Jun 21, 2022
2a1c016
feat: add vtadmin internal specification and reconciliation logic
GuptaManan100 Jun 21, 2022
5e1a6bf
feat: add default for vtadmin image
GuptaManan100 Jun 21, 2022
51be7e6
feat: add vtadmin test and fix bugs
GuptaManan100 Jun 22, 2022
191b130
feat: augment vtadmin test by adding more api calls
GuptaManan100 Jun 22, 2022
024488d
feat: vtctld should also register vtctld service
GuptaManan100 Jun 22, 2022
3d380b8
feat: bug fix - use the correct IP address
GuptaManan100 Jun 22, 2022
899d03a
test: augment vtadmin test to query 2 more apis
GuptaManan100 Jun 22, 2022
471b189
feat: fix vtadmin spec json configuration name
GuptaManan100 Jun 23, 2022
a3ddf12
feat: fixup cluster name setting of vtadmin and augment test to also …
GuptaManan100 Jun 23, 2022
254725e
test: add rbac rules and verify that they are honored
GuptaManan100 Jun 23, 2022
90e7fef
feat: add preliminary code to deploy web of vtadmin
GuptaManan100 Jun 24, 2022
b59ed44
feat: set the correct environment variables and use the default comma…
GuptaManan100 Jun 24, 2022
fb65f2f
feat: move to specifying config file as a volume instead of environme…
GuptaManan100 Jun 27, 2022
b43e879
feat: add more parameters to vtadmin spec and fix documentation
GuptaManan100 Jun 27, 2022
dcfdd3a
feat: make changes to operator to use the newly defined parameters
GuptaManan100 Jun 27, 2022
d0169d5
feat: use correct endpoints for readiness and liveness check
GuptaManan100 Jun 27, 2022
cd8f1d4
feat: code cleanup and comment
GuptaManan100 Jun 27, 2022
589351a
feat: use chromium to test that vtadmin web is setup correctly
GuptaManan100 Jun 27, 2022
1386d66
test: add no-sandbox flag as it is required to run headless chromium …
GuptaManan100 Jun 27, 2022
578e28e
feat: rename vtAdmin option to vtadmin
GuptaManan100 Jun 27, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,21 @@ steps:
propagate-environment: true
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"

- name: "VTAdmin Test"
command:
- apk add g++ make bash curl mysql mysql-client chromium
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line is different from the other test setup lines. It is also installing chromium browser. We need this to run it in a headless mode to download the VTAdmin web pages. We can't use curl (which we use for the API pages) or wget because they do not support JavaScript, so a headless browser was the easiest solution.

- wget https://golang.org/dl/go1.17.2.linux-amd64.tar.gz
- tar -C /usr/local -xzf go1.17.2.linux-amd64.tar.gz
- export PATH=$PATH:/usr/local/go/bin
- rm go1.17.2.linux-amd64.tar.gz
- make vtadmin-test
concurrency: 1
concurrency_group: 'vtop/vtadmin-test'
timeout_in_minutes: 60
plugins:
- docker#v3.12.0:
image: "docker:latest"
propagate-environment: true
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,7 @@ upgrade-test: build e2e-test-setup
backup-restore-test: build e2e-test-setup
echo "Running Backup-Restore test"
test/endtoend/backup_restore_test.sh

vtadmin-test: build e2e-test-setup
echo "Running VtAdmin test"
test/endtoend/vtadmin_test.sh
2 changes: 2 additions & 0 deletions deploy/crds/planetscale.com_vitesscells.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,8 @@ spec:
type: string
mysqldExporter:
type: string
vtadmin:
type: string
vtbackup:
type: string
vtctld:
Expand Down
189 changes: 189 additions & 0 deletions deploy/crds/planetscale.com_vitessclusters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -901,6 +901,8 @@ spec:
type: string
mysqldExporter:
type: string
vtadmin:
type: string
vtbackup:
type: string
vtctld:
Expand Down Expand Up @@ -934,6 +936,8 @@ spec:
type: object
mysqldExporter:
type: string
vtadmin:
type: string
vtbackup:
type: string
vtctld:
Expand Down Expand Up @@ -1989,6 +1993,184 @@ spec:
tolerations:
x-kubernetes-preserve-unknown-fields: true
type: object
vtadmin:
properties:
affinity:
x-kubernetes-preserve-unknown-fields: true
annotations:
additionalProperties:
type: string
type: object
apiAddresses:
items:
type: string
type: array
apiResources:
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
type: object
cells:
items:
type: string
type: array
extraEnv:
items:
properties:
name:
type: string
value:
type: string
valueFrom:
properties:
configMapKeyRef:
properties:
key:
type: string
name:
type: string
optional:
type: boolean
required:
- key
type: object
fieldRef:
properties:
apiVersion:
type: string
fieldPath:
type: string
required:
- fieldPath
type: object
resourceFieldRef:
properties:
containerName:
type: string
divisor:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
resource:
type: string
required:
- resource
type: object
secretKeyRef:
properties:
key:
type: string
name:
type: string
optional:
type: boolean
required:
- key
type: object
type: object
required:
- name
type: object
type: array
extraFlags:
additionalProperties:
type: string
type: object
extraLabels:
additionalProperties:
type: string
type: object
extraVolumeMounts:
items:
properties:
mountPath:
type: string
mountPropagation:
type: string
name:
type: string
readOnly:
type: boolean
subPath:
type: string
subPathExpr:
type: string
required:
- mountPath
- name
type: object
type: array
extraVolumes:
x-kubernetes-preserve-unknown-fields: true
initContainers:
x-kubernetes-preserve-unknown-fields: true
rbac:
properties:
key:
type: string
name:
type: string
volumeName:
type: string
required:
- key
type: object
readOnly:
type: boolean
replicas:
format: int32
type: integer
service:
properties:
annotations:
additionalProperties:
type: string
type: object
clusterIP:
type: string
type: object
sidecarContainers:
x-kubernetes-preserve-unknown-fields: true
tolerations:
x-kubernetes-preserve-unknown-fields: true
webResources:
properties:
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
type: object
required:
- apiAddresses
type: object
required:
- cells
type: object
Expand Down Expand Up @@ -2087,6 +2269,13 @@ spec:
serviceName:
type: string
type: object
vtadmin:
properties:
available:
type: string
serviceName:
type: string
type: object
type: object
type: object
served: true
Expand Down
2 changes: 2 additions & 0 deletions deploy/crds/planetscale.com_vitesskeyspaces.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,8 @@ spec:
type: string
mysqldExporter:
type: string
vtadmin:
type: string
vtbackup:
type: string
vtctld:
Expand Down
2 changes: 2 additions & 0 deletions deploy/crds/planetscale.com_vitessshards.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,8 @@ spec:
type: string
mysqldExporter:
type: string
vtadmin:
type: string
vtbackup:
type: string
vtctld:
Expand Down
Loading