diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index e41ada6d..99cff020 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -4,100 +4,131 @@ agents: env: GO_VERSION_FILE: "go1.23.0.linux-amd64.tar.gz" + # Mount the docker.sock as to the docker container, so that we are able to # run docker build command and kind is spawned as a sibling container. steps: - - name: "Upgrade Test" - command: - - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat - - wget https://golang.org/dl/$GO_VERSION_FILE - - tar -C /usr/local -xzf $GO_VERSION_FILE - - export PATH=$PATH:/usr/local/go/bin - - rm $GO_VERSION_FILE - - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 - - make upgrade-test - concurrency: 1 - concurrency_group: 'vtop/upgrade-downgrade-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" + - group: "Upgrade Test" + steps: + - label: "Upgrade Test {{matrix}}" + matrix: + - "1.31.0" + - "1.30.4" + - "1.29.8" + command: + - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat + - wget https://golang.org/dl/$GO_VERSION_FILE + - tar -C /usr/local -xzf $GO_VERSION_FILE + - export PATH=$PATH:/usr/local/go/bin + - rm $GO_VERSION_FILE + - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 + - K8S_VERSION={{matrix}} make upgrade-test + concurrency: 1 + concurrency_group: 'vtop/upgrade-downgrade-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" - - name: "Backup Restore Test" - command: - - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat - - wget https://golang.org/dl/$GO_VERSION_FILE - - tar -C /usr/local -xzf $GO_VERSION_FILE - - export PATH=$PATH:/usr/local/go/bin - - rm $GO_VERSION_FILE - - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 - - make backup-restore-test - concurrency: 1 - concurrency_group: 'vtop/backup-restore-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" + - group: "Backup Restore Test" + steps: + - label: "Backup Restore Test {{matrix}}" + matrix: + - "1.31.0" + - "1.30.4" + - "1.29.8" + command: + - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat + - wget https://golang.org/dl/$GO_VERSION_FILE + - tar -C /usr/local -xzf $GO_VERSION_FILE + - export PATH=$PATH:/usr/local/go/bin + - rm $GO_VERSION_FILE + - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 + - K8S_VERSION={{matrix}} make backup-restore-test + concurrency: 1 + concurrency_group: 'vtop/backup-restore-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" - - name: "Backup Schedule Test" - command: - - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat - - wget https://golang.org/dl/$GO_VERSION_FILE - - tar -C /usr/local -xzf $GO_VERSION_FILE - - export PATH=$PATH:/usr/local/go/bin - - rm $GO_VERSION_FILE - - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 - - make backup-schedule-test - concurrency: 1 - concurrency_group: 'vtop/backup-schedule-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" + - group: "Backup Schedule Test" + steps: + - name: "Backup Schedule Test {{matrix}}" + matrix: + - "1.31.0" + - "1.30.4" + - "1.29.8" + command: + - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat + - wget https://golang.org/dl/$GO_VERSION_FILE + - tar -C /usr/local -xzf $GO_VERSION_FILE + - export PATH=$PATH:/usr/local/go/bin + - rm $GO_VERSION_FILE + - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 + - K8S_VERSION={{matrix}} make backup-schedule-test + concurrency: 1 + concurrency_group: 'vtop/backup-schedule-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" - - name: "VTOrc and VTAdmin Test" - command: - - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat chromium - - wget https://golang.org/dl/$GO_VERSION_FILE - - tar -C /usr/local -xzf $GO_VERSION_FILE - - export PATH=$PATH:/usr/local/go/bin - - rm $GO_VERSION_FILE - - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 - - make vtorc-vtadmin-test - concurrency: 1 - concurrency_group: 'vtop/vtorc-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" + - group: "VTOrc and VTAdmin Test" + steps: + - label: "VTOrc and VTAdmin Test {{matrix}}" + matrix: + - "1.31.0" + - "1.30.4" + - "1.29.8" + command: + - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat chromium + - wget https://golang.org/dl/$GO_VERSION_FILE + - tar -C /usr/local -xzf $GO_VERSION_FILE + - export PATH=$PATH:/usr/local/go/bin + - rm $GO_VERSION_FILE + - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 + - K8S_VERSION={{matrix}} make vtorc-vtadmin-test + concurrency: 1 + concurrency_group: 'vtop/vtorc-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" - - name: "Unmanaged Tablet Test" - command: - - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat chromium - - wget https://golang.org/dl/$GO_VERSION_FILE - - tar -C /usr/local -xzf $GO_VERSION_FILE - - export PATH=$PATH:/usr/local/go/bin - - rm $GO_VERSION_FILE - - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 - - make unmanaged-tablet-test - concurrency: 1 - concurrency_group: 'vtop/unmanaged-tablet-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" + - group: "Unmanaged Tablet Test" + steps: + - label: "Unmanaged Tablet Test {{matrix}}" + matrix: + - "1.31.0" + - "1.30.4" + - "1.29.8" + command: + - apk add g++ make bash gcompat curl mysql mysql-client libc6-compat chromium + - wget https://golang.org/dl/$GO_VERSION_FILE + - tar -C /usr/local -xzf $GO_VERSION_FILE + - export PATH=$PATH:/usr/local/go/bin + - rm $GO_VERSION_FILE + - ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2 + - K8S_VERSION={{matrix}} make unmanaged-tablet-test + concurrency: 1 + concurrency_group: 'vtop/unmanaged-tablet-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" diff --git a/README.md b/README.md index 6fbf4eb4..7ff2efc2 100644 --- a/README.md +++ b/README.md @@ -19,13 +19,18 @@ compatible with certain Vitess and Kubernetes versions, as shown in this table: | `v2.11.*` | `v18.0.*` | `v1.22.*`, `v1.23.*`, `v1.24.*`, or `v1.25.*` | | `v2.12.*` | `v19.0.*` | `v1.25.*`, `v1.26.*`, `v1.27.*`, or `v1.28.*` | | `v2.13.*` | `v20.0.*` | `v1.25.*`, `v1.26.*`, `v1.27.*`, or `v1.28.*` | -| `latest` | `latest` | `v1.25.*`, `v1.26.*`, `v1.27.*`, or `v1.28.*` | +| `latest` | `latest` | `v1.29.*`, `v1.30.*`, `v1.31.*` | If for some reason you must attempt to use versions outside the recommend window, we still welcome bug reports since a workaround might be possible. However, in some cases we may be unable to overcome the underlying limitations in our dependencies. +Each major release of the vitess-operator will support the three latest major releases of Kubernetes at the time +of the vitess-operator's major release RC-1. This will ensure that the major release of the vitess-operator will +always support at least one major release of Kubernetes for its whole lifetime (1 year). +More information about the release cycle of vitess-operator in the following section. + ### Release Cycle For each major release of Vitess there will be a minor release of the vitess-operator. diff --git a/deploy/crds/planetscale.com_etcdlockservers.yaml b/deploy/crds/planetscale.com_etcdlockservers.yaml index c1818e91..065de789 100644 --- a/deploy/crds/planetscale.com_etcdlockservers.yaml +++ b/deploy/crds/planetscale.com_etcdlockservers.yaml @@ -3,8 +3,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 @@ -62,6 +61,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -91,18 +91,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: @@ -133,11 +121,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 @@ -146,6 +136,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -165,6 +157,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -203,6 +196,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -234,6 +228,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -253,6 +249,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -280,6 +277,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/deploy/crds/planetscale.com_vitessbackups.yaml b/deploy/crds/planetscale.com_vitessbackups.yaml index 098652c1..0ac25006 100644 --- a/deploy/crds/planetscale.com_vitessbackups.yaml +++ b/deploy/crds/planetscale.com_vitessbackups.yaml @@ -3,8 +3,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 diff --git a/deploy/crds/planetscale.com_vitessbackupschedules.yaml b/deploy/crds/planetscale.com_vitessbackupschedules.yaml index b0b5e6af..2bb4c666 100644 --- a/deploy/crds/planetscale.com_vitessbackupschedules.yaml +++ b/deploy/crds/planetscale.com_vitessbackupschedules.yaml @@ -3,8 +3,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 @@ -69,6 +68,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/deploy/crds/planetscale.com_vitessbackupstorages.yaml b/deploy/crds/planetscale.com_vitessbackupstorages.yaml index a465267f..46207b67 100644 --- a/deploy/crds/planetscale.com_vitessbackupstorages.yaml +++ b/deploy/crds/planetscale.com_vitessbackupstorages.yaml @@ -3,8 +3,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 diff --git a/deploy/crds/planetscale.com_vitesscells.yaml b/deploy/crds/planetscale.com_vitesscells.yaml index d81f76c3..1e85d414 100644 --- a/deploy/crds/planetscale.com_vitesscells.yaml +++ b/deploy/crds/planetscale.com_vitesscells.yaml @@ -3,8 +3,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 @@ -76,6 +75,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -114,6 +114,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -145,6 +146,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -168,6 +171,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic type: object httpGet: properties: @@ -185,6 +189,7 @@ spec: - value type: object type: array + x-kubernetes-list-type: atomic path: type: string port: @@ -197,6 +202,14 @@ spec: required: - port type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object tcpSocket: properties: host: @@ -218,6 +231,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic type: object httpGet: properties: @@ -235,6 +249,7 @@ spec: - value type: object type: array + x-kubernetes-list-type: atomic path: type: string port: @@ -247,6 +262,14 @@ spec: required: - port type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object tcpSocket: properties: host: @@ -272,6 +295,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -392,6 +417,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -440,6 +466,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -469,18 +496,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: @@ -511,11 +526,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 @@ -524,6 +541,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -543,6 +562,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -581,6 +601,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -612,6 +633,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -631,6 +654,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -658,6 +682,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/deploy/crds/planetscale.com_vitessclusters.yaml b/deploy/crds/planetscale.com_vitessclusters.yaml index 818304f1..709c4808 100644 --- a/deploy/crds/planetscale.com_vitessclusters.yaml +++ b/deploy/crds/planetscale.com_vitessclusters.yaml @@ -3,8 +3,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 @@ -191,6 +190,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -310,6 +311,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -348,6 +350,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -379,6 +382,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -402,6 +407,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic type: object httpGet: properties: @@ -419,6 +425,7 @@ spec: - value type: object type: array + x-kubernetes-list-type: atomic path: type: string port: @@ -431,6 +438,14 @@ spec: required: - port type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object tcpSocket: properties: host: @@ -452,6 +467,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic type: object httpGet: properties: @@ -469,6 +485,7 @@ spec: - value type: object type: array + x-kubernetes-list-type: atomic path: type: string port: @@ -481,6 +498,14 @@ spec: required: - port type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object tcpSocket: properties: host: @@ -506,6 +531,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -629,6 +656,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -658,18 +686,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: @@ -700,11 +716,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 @@ -713,6 +731,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -732,6 +752,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -770,6 +791,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -801,6 +823,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -820,6 +844,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -847,6 +872,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -953,6 +980,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -982,18 +1010,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: @@ -1024,11 +1040,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 @@ -1037,6 +1055,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -1056,6 +1076,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1094,6 +1115,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1125,6 +1147,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -1144,6 +1168,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -1171,6 +1196,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1237,6 +1264,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -1358,6 +1386,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -1387,18 +1416,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: @@ -1429,11 +1446,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 @@ -1442,6 +1461,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -1503,6 +1524,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1541,6 +1563,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1568,6 +1591,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -1592,6 +1617,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1628,6 +1655,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1691,6 +1720,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1796,6 +1827,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -1825,18 +1857,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: @@ -1867,11 +1887,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 @@ -1880,6 +1902,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -1941,6 +1965,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1979,6 +2004,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2006,6 +2032,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -2030,6 +2058,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2066,6 +2096,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2129,6 +2161,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2208,6 +2242,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2246,6 +2281,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2277,6 +2313,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -2297,6 +2335,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2409,6 +2449,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2447,6 +2488,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2478,6 +2520,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -2501,6 +2545,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2558,6 +2604,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2600,6 +2648,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2638,6 +2687,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2669,6 +2719,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -2718,6 +2770,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/deploy/crds/planetscale.com_vitesskeyspaces.yaml b/deploy/crds/planetscale.com_vitesskeyspaces.yaml index 0d393ac2..674e4588 100644 --- a/deploy/crds/planetscale.com_vitesskeyspaces.yaml +++ b/deploy/crds/planetscale.com_vitesskeyspaces.yaml @@ -3,8 +3,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 @@ -194,6 +193,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -288,6 +288,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -317,18 +318,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: @@ -359,11 +348,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 @@ -372,6 +363,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -433,6 +426,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -471,6 +465,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -498,6 +493,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -522,6 +519,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -558,6 +557,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -621,6 +622,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -726,6 +729,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -755,18 +759,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: @@ -797,11 +789,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 @@ -810,6 +804,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -871,6 +867,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -909,6 +906,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -936,6 +934,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -960,6 +960,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -996,6 +998,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1059,6 +1063,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1172,6 +1178,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1210,6 +1217,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1241,6 +1249,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -1261,6 +1271,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/deploy/crds/planetscale.com_vitessshards.yaml b/deploy/crds/planetscale.com_vitessshards.yaml index 405fd52d..ea951365 100644 --- a/deploy/crds/planetscale.com_vitessshards.yaml +++ b/deploy/crds/planetscale.com_vitessshards.yaml @@ -3,8 +3,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 @@ -203,6 +202,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -271,6 +271,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -300,18 +301,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: @@ -342,11 +331,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 @@ -355,6 +346,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -416,6 +409,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -454,6 +448,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -481,6 +476,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -505,6 +502,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -541,6 +540,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -604,6 +605,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -702,6 +705,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -740,6 +744,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -771,6 +776,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -791,6 +798,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/go.mod b/go.mod index 08885e0d..eb30c69e 100644 --- a/go.mod +++ b/go.mod @@ -3,24 +3,24 @@ module planetscale.dev/vitess-operator go 1.23.0 require ( - github.com/ahmetb/gen-crd-api-reference-docs v0.1.5-0.20190629210212-52e137b8d003 + github.com/ahmetb/gen-crd-api-reference-docs v0.3.0 github.com/google/uuid v1.6.0 github.com/planetscale/operator-sdk-libs v0.0.0-20220216002626-1af183733234 - github.com/prometheus/client_golang v1.20.0 + github.com/prometheus/client_golang v1.20.2 github.com/robfig/cron v1.2.0 github.com/sirupsen/logrus v1.9.3 github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.9.0 gopkg.in/yaml.v2 v2.4.0 - k8s.io/api v0.28.5 - k8s.io/apimachinery v0.28.5 - k8s.io/client-go v0.28.5 + k8s.io/api v0.31.0 + k8s.io/apimachinery v0.31.0 + k8s.io/client-go v0.31.0 k8s.io/klog v1.0.0 - k8s.io/kubectl v0.21.9 - k8s.io/kubernetes v1.28.5 - k8s.io/utils v0.0.0-20240502163921-fe8a2dddb1d0 - sigs.k8s.io/controller-runtime v0.16.3 - sigs.k8s.io/controller-tools v0.11.3 + k8s.io/kubectl v0.31.0 + k8s.io/kubernetes v1.31.0 + k8s.io/utils v0.0.0-20240821151609-f90d01438635 + sigs.k8s.io/controller-runtime v0.19.0 + sigs.k8s.io/controller-tools v0.16.1 sigs.k8s.io/kustomize v2.0.3+incompatible vitess.io/vitess v0.10.3-0.20240829163844-977b9a301a4c ) @@ -53,24 +53,25 @@ require ( github.com/coreos/go-semver v0.3.1 // indirect github.com/coreos/go-systemd/v22 v22.5.0 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect - github.com/docker/distribution v2.8.2+incompatible // indirect + github.com/distribution/reference v0.5.0 // indirect github.com/dustin/go-humanize v1.0.1 // indirect github.com/ebitengine/purego v0.7.1 // indirect - github.com/emicklei/go-restful/v3 v3.12.0 // indirect + github.com/emicklei/go-restful/v3 v3.12.1 // indirect github.com/evanphx/json-patch v5.9.0+incompatible // indirect - github.com/evanphx/json-patch/v5 v5.6.0 // indirect + github.com/evanphx/json-patch/v5 v5.9.0 // indirect github.com/fatih/color v1.17.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/fsnotify/fsnotify v1.7.0 // indirect + github.com/fxamacker/cbor/v2 v2.7.0 // indirect github.com/ghodss/yaml v1.0.0 // indirect github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect - github.com/go-logr/zapr v1.2.4 // indirect + github.com/go-logr/zapr v1.3.0 // indirect github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/jsonreference v0.21.0 // indirect github.com/go-openapi/spec v0.21.0 // indirect github.com/go-openapi/swag v0.23.0 // indirect - github.com/gobuffalo/flect v0.3.0 // indirect + github.com/gobuffalo/flect v1.0.2 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/glog v1.2.2 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect @@ -96,7 +97,7 @@ require ( github.com/hashicorp/golang-lru v1.0.2 // indirect github.com/hashicorp/hcl v1.0.1-vault-5 // indirect github.com/hashicorp/serf v0.10.1 // indirect - github.com/imdario/mergo v0.3.13 // indirect + github.com/imdario/mergo v0.3.16 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/josharian/intern v1.0.0 // indirect @@ -129,7 +130,7 @@ require ( github.com/planetscale/pargzip v0.0.0-20201116224723-90c7fc03ea8a // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/prometheus/client_model v0.6.1 // indirect - github.com/prometheus/common v0.55.0 // indirect + github.com/prometheus/common v0.57.0 // indirect github.com/prometheus/procfs v0.15.1 // indirect github.com/rivo/uniseg v0.4.7 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect @@ -146,17 +147,19 @@ require ( github.com/tinylib/msgp v1.2.0 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect + github.com/x448/float16 v0.8.4 // indirect github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 // indirect github.com/z-division/go-zookeeper v1.0.0 // indirect go.etcd.io/etcd/api/v3 v3.5.15 // indirect go.etcd.io/etcd/client/pkg/v3 v3.5.15 // indirect go.etcd.io/etcd/client/v3 v3.5.15 // indirect go.opencensus.io v0.24.0 // indirect - go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect - go.opentelemetry.io/otel v1.28.0 // indirect - go.opentelemetry.io/otel/metric v1.28.0 // indirect - go.opentelemetry.io/otel/trace v1.28.0 // indirect + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 // indirect + go.opentelemetry.io/otel v1.29.0 // indirect + go.opentelemetry.io/otel/metric v1.29.0 // indirect + go.opentelemetry.io/otel/sdk v1.29.0 // indirect + go.opentelemetry.io/otel/trace v1.29.0 // indirect go.uber.org/atomic v1.11.0 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.27.0 // indirect @@ -176,19 +179,19 @@ require ( google.golang.org/api v0.192.0 // indirect google.golang.org/genproto v0.0.0-20240814211410-ddb44dafa142 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd // indirect google.golang.org/grpc v1.65.0 // indirect google.golang.org/protobuf v1.34.2 // indirect gopkg.in/DataDog/dd-trace-go.v1 v1.66.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiextensions-apiserver v0.28.5 // indirect - k8s.io/apiserver v0.28.5 // indirect - k8s.io/component-base v0.28.5 // indirect + k8s.io/apiextensions-apiserver v0.31.0 // indirect + k8s.io/apiserver v0.31.0 // indirect + k8s.io/component-base v0.31.0 // indirect k8s.io/gengo v0.0.0-20221011193443-fad74ee6edd9 // indirect - k8s.io/klog/v2 v2.120.1 // indirect - k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f // indirect + k8s.io/klog/v2 v2.130.1 // indirect + k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect sigs.k8s.io/yaml v1.4.0 // indirect @@ -197,35 +200,36 @@ require ( replace github.com/skeema/tengo => github.com/planetscale/tengo v0.10.1-ps.v4 // Required by Vitess for declerative statements // NOTE: Make sure controller-runtime's k8s minor version matches below -// Pinned to kubernetes-1.26.1 +// Pinned to kubernetes-1.31.0 replace ( - k8s.io/api => k8s.io/api v0.28.5 - k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.28.5 - k8s.io/apimachinery => k8s.io/apimachinery v0.28.5 - k8s.io/apiserver => k8s.io/apiserver v0.28.5 - k8s.io/cli-runtime => k8s.io/cli-runtime v0.28.5 - k8s.io/client-go => k8s.io/client-go v0.28.5 - k8s.io/cloud-provider => k8s.io/cloud-provider v0.28.5 - k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.28.5 - k8s.io/code-generator => k8s.io/code-generator v0.28.5 - k8s.io/component-base => k8s.io/component-base v0.28.5 - k8s.io/component-helpers => k8s.io/component-helpers v0.28.5 - k8s.io/controller-manager => k8s.io/controller-manager v0.28.5 - k8s.io/cri-api => k8s.io/cri-api v0.28.5 - k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.28.5 - k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.28.5 - k8s.io/endpointslice => k8s.io/endpointslice v0.28.5 - k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.28.5 - k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.28.5 - k8s.io/kube-proxy => k8s.io/kube-proxy v0.28.5 - k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.28.5 - k8s.io/kubectl => k8s.io/kubectl v0.28.5 - k8s.io/kubelet => k8s.io/kubelet v0.28.5 - k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.28.5 - k8s.io/metrics => k8s.io/metrics v0.28.5 - k8s.io/mount-utils => k8s.io/mount-utils v0.28.5 - k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.28.5 - k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.28.5 - k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.28.5 - k8s.io/sample-controller => k8s.io/sample-controller v0.28.5 + k8s.io/api => k8s.io/api v0.31.0 + k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.31.0 + k8s.io/apimachinery => k8s.io/apimachinery v0.31.0 + k8s.io/apiserver => k8s.io/apiserver v0.31.0 + k8s.io/cli-runtime => k8s.io/cli-runtime v0.31.0 + k8s.io/client-go => k8s.io/client-go v0.31.0 + k8s.io/cloud-provider => k8s.io/cloud-provider v0.31.0 + k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.31.0 + k8s.io/code-generator => k8s.io/code-generator v0.31.0 + k8s.io/component-base => k8s.io/component-base v0.31.0 + k8s.io/component-helpers => k8s.io/component-helpers v0.31.0 + k8s.io/controller-manager => k8s.io/controller-manager v0.31.0 + k8s.io/cri-api => k8s.io/cri-api v0.31.0 + k8s.io/cri-client => k8s.io/cri-client v0.31.0 + k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.31.0 + k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.31.0 + k8s.io/endpointslice => k8s.io/endpointslice v0.31.0 + k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.31.0 + k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.31.0 + k8s.io/kube-proxy => k8s.io/kube-proxy v0.31.0 + k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.31.0 + k8s.io/kubectl => k8s.io/kubectl v0.31.0 + k8s.io/kubelet => k8s.io/kubelet v0.31.0 + k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.31.0 + k8s.io/metrics => k8s.io/metrics v0.31.0 + k8s.io/mount-utils => k8s.io/mount-utils v0.31.0 + k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.31.0 + k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.31.0 + k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.31.0 + k8s.io/sample-controller => k8s.io/sample-controller v0.31.0 ) diff --git a/go.sum b/go.sum index 307e5523..627012a8 100644 --- a/go.sum +++ b/go.sum @@ -21,10 +21,8 @@ github.com/Azure/azure-storage-blob-go v0.15.0 h1:rXtgp8tN1p29GvpGgfJetavIG0V7Og github.com/Azure/azure-storage-blob-go v0.15.0/go.mod h1:vbjsVbX0dlxnRc4FFMPsS9BsJWPcne7GB7onqlPvz58= github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= -github.com/Azure/go-autorest/autorest v0.11.29 h1:I4+HL/JDvErx2LjyzaVxllw2lRDB5/BT2Bm4g20iqYw= +github.com/Azure/go-autorest/autorest/adal v0.9.13 h1:Mp5hbtOePIzM8pJVRa3YLrWWmZtoxRXqUEzCfJt3+/Q= github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= -github.com/Azure/go-autorest/autorest/adal v0.9.23 h1:Yepx8CvFxwNKpH6ja7RZ+sKX+DWYNldbLiALMC3BTz8= -github.com/Azure/go-autorest/autorest/adal v0.9.23/go.mod h1:5pcMqFkdPhviJdlEy3kC/v1ZLnQl0MH6XA5YCcMhy4c= github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= @@ -59,8 +57,8 @@ github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERo github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= github.com/Shopify/toxiproxy/v2 v2.9.0 h1:DIaDZG2/r/kv3Em6UxYBUVnnWl1mHlYTGFv+sTPV7VI= github.com/Shopify/toxiproxy/v2 v2.9.0/go.mod h1:2uPRyxR46fsx2yUr9i8zcejzdkWfK7p6G23jV/X6YNs= -github.com/ahmetb/gen-crd-api-reference-docs v0.1.5-0.20190629210212-52e137b8d003 h1:mfPmvD5Nr9GTQnSgOg5OXusjS8uqDAZhJdYjmr1SWMc= -github.com/ahmetb/gen-crd-api-reference-docs v0.1.5-0.20190629210212-52e137b8d003/go.mod h1:P/XzJ+c2+khJKNKABcm2biRwk2QAuwbLf8DlXuaL7WM= +github.com/ahmetb/gen-crd-api-reference-docs v0.3.0 h1:+XfOU14S4bGuwyvCijJwhhBIjYN+YXS18jrCY2EzJaY= +github.com/ahmetb/gen-crd-api-reference-docs v0.3.0/go.mod h1:TdjdkYhlOifCQWPs1UdTma97kQQMozf5h26hTuG70u8= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= @@ -104,8 +102,8 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2 h1:tdlZCpZ/P9DhczCTSixgIKmwPv6+wP5DGjqLYw5SUiA= github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= -github.com/docker/distribution v2.8.2+incompatible h1:T3de5rq0dB1j30rp0sA2rER+m322EBzniBPB6ZIzuh8= -github.com/docker/distribution v2.8.2+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/distribution/reference v0.5.0 h1:/FUIFXtfc/x2gpa5/VGfiGLuOIdYa1t65IKK2OFGvA0= +github.com/distribution/reference v0.5.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= @@ -114,16 +112,16 @@ github.com/eapache/queue/v2 v2.0.0-20230407133247-75960ed334e4 h1:8EXxF+tCLqaVk8 github.com/eapache/queue/v2 v2.0.0-20230407133247-75960ed334e4/go.mod h1:I5sHm0Y0T1u5YjlyqC5GVArM7aNZRUYtTjmJ8mPJFds= github.com/ebitengine/purego v0.7.1 h1:6/55d26lG3o9VCZX8lping+bZcmShseiqlh2bnUDiPA= github.com/ebitengine/purego v0.7.1/go.mod h1:ah1In8AOtksoNK6yk5z1HTJeUkC1Ez4Wk2idgGslMwQ= -github.com/emicklei/go-restful/v3 v3.12.0 h1:y2DdzBAURM29NFF94q6RaY4vjIH1rtwDapwQtU84iWk= -github.com/emicklei/go-restful/v3 v3.12.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/emicklei/go-restful/v3 v3.12.1 h1:PJMDIM/ak7btuL8Ex0iYET9hxM3CI2sjZtzpL63nKAU= +github.com/emicklei/go-restful/v3 v3.12.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lShz4oaXpDTX2bLe7ls= github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanphx/json-patch/v5 v5.6.0 h1:b91NhWfaz02IuVxO9faSllyAtNXHMPkC5J8sJCLunww= -github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2VvlbKOFpnXhI9Bw4= +github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg= +github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= @@ -131,11 +129,14 @@ github.com/fatih/color v1.17.0 h1:GlRw1BRJxkpqUCBKzKOw098ed57fEsKeNjpTe3cSjK4= github.com/fatih/color v1.17.0/go.mod h1:YZ7TlrGPkiz6ku9fK3TLD/pl3CpsiFyu8N92HLgmosI= github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/form3tech-oss/jwt-go v3.2.2+incompatible h1:TcekIExNqud5crz4xD2pavyTgWiPvpYe4Xau31I0PRk= github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= +github.com/fxamacker/cbor/v2 v2.7.0 h1:iM5WgngdRBanHcxugY4JySA0nk1wZorNOpTgCMedv5E= +github.com/fxamacker/cbor/v2 v2.7.0/go.mod h1:pxXPTn3joSm21Gbwsv0w9OSA2y1HFR9qXEeXQVeNoDQ= github.com/gammazero/deque v0.2.1 h1:qSdsbG6pgp6nL7A0+K/B7s12mcCY/5l5SIUpMOl+dC0= github.com/gammazero/deque v0.2.1/go.mod h1:LFroj8x4cMYCukHJDbxFCkT+r9AndaJnFMuZDV34tuU= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= @@ -151,13 +152,12 @@ github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.4/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/go-logr/zapr v1.2.4 h1:QHVo+6stLbfJmYGkQ7uGHUCu5hnAFAj6mDe6Ea0SeOo= -github.com/go-logr/zapr v1.2.4/go.mod h1:FyHWQIzQORZ0QVE1BtVHv3cKtNLuXsbNLtpuhNapBOA= +github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= +github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ= github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY= github.com/go-openapi/jsonreference v0.21.0 h1:Rs+Y7hSXT83Jacb7kFyjn4ijOuVGSvOdF2+tg1TRrwQ= @@ -169,17 +169,14 @@ github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI= github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= -github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-task/slim-sprig/v3 v3.0.0 h1:sUs3vkvUymDpBKi3qH1YSqBQk9+9D/8M2mN1vB6EwHI= github.com/go-task/slim-sprig/v3 v3.0.0/go.mod h1:W848ghGpv3Qj3dhTPRyJypKRiqCdHZiAzKg9hl15HA8= -github.com/gobuffalo/flect v0.3.0 h1:erfPWM+K1rFNIQeRPdeEXxo8yFr/PO17lhRnS8FUrtk= -github.com/gobuffalo/flect v0.3.0/go.mod h1:5pf3aGnsvqvCj50AVni7mJJF8ICxGZ8HomberC3pXLE= +github.com/gobuffalo/flect v1.0.2 h1:eqjPGSo2WmjgY2XlpGwo2NXgL3RucAKo4k4qQMNA5sA= +github.com/gobuffalo/flect v1.0.2/go.mod h1:A5msMlrHtLqh9umBSnvabjsMrCcCpAyzglnDvkbYKHs= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= -github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/glog v1.2.2 h1:1+mZ9upx1Dh6FmUTFR1naJ77miKiXgALjWOZ3NVFPmY= github.com/golang/glog v1.2.2/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= @@ -223,8 +220,8 @@ github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= -github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 h1:k7nVchz72niMH6YLQNvHSdIE7iqsQxK1P41mySCvssg= -github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= github.com/google/s2a-go v0.1.8 h1:zZDs9gcbt9ZPLV0ndSyQk6Kacx2g/X+SKYovpnz3SMM= github.com/google/s2a-go v0.1.8/go.mod h1:6iNWHTpQ+nfNRN5E00MSdfDwVesa8hhS32PhPO8deJA= github.com/google/safehtml v0.1.0 h1:EwLKo8qawTKfsi0orxcQAZzu07cICaBeFMegAU9eaT8= @@ -296,11 +293,10 @@ github.com/hashicorp/memberlist v0.5.0 h1:EtYPN8DpAURiapus508I4n9CzHs2W+8NZGbmmR github.com/hashicorp/memberlist v0.5.0/go.mod h1:yvyXLpo0QaGE59Y7hDTsTzDD25JYBZ4mHgHUZ8lrOI0= github.com/hashicorp/serf v0.10.1 h1:Z1H2J60yRKvfDYAOZLd2MU0ND4AH/WDz7xYHDWQsIPY= github.com/hashicorp/serf v0.10.1/go.mod h1:yL2t6BqATOLGc5HF7qbFkTfXoPIY0WZdWHfEvMqbG+4= -github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= -github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= +github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= +github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= -github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= @@ -390,10 +386,10 @@ github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= -github.com/onsi/ginkgo/v2 v2.17.2 h1:7eMhcy3GimbsA3hEnVKdw/PQM9XN9krpKVXsZdph0/g= -github.com/onsi/ginkgo/v2 v2.17.2/go.mod h1:nP2DPOQoNsQmsVyv5rDA8JkXQoCs6goXIvr/PRJ1eCc= -github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= -github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= +github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA= +github.com/onsi/ginkgo/v2 v2.19.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= +github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= +github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opentracing-contrib/go-grpc v0.0.0-20240724223109-9dec25a38fa8 h1:gHTSPFezGeYzTWCvpPM6lBanwXfuksik5Hy5MEHtvUA= @@ -432,8 +428,8 @@ github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSg github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= -github.com/prometheus/client_golang v1.20.0 h1:jBzTZ7B099Rg24tny+qngoynol8LtVYlA2bqx3vEloI= -github.com/prometheus/client_golang v1.20.0/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE= +github.com/prometheus/client_golang v1.20.2 h1:5ctymQzZlyOON1666svgwn3s6IKWgfbjsejTMiXIyjg= +github.com/prometheus/client_golang v1.20.2/go.mod h1:PIEt8X02hGcP8JWbeHyeZ53Y/jReSnHgO035n//V5WE= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= @@ -442,8 +438,8 @@ github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY= github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= -github.com/prometheus/common v0.55.0 h1:KEi6DK7lXW/m7Ig5i47x0vRzuBsHuvJdi5ee6Y3G1dc= -github.com/prometheus/common v0.55.0/go.mod h1:2SECS4xJG1kd8XF9IcM1gMX6510RAEL65zxzNImwdc8= +github.com/prometheus/common v0.57.0 h1:Ro/rKjwdq9mZn1K5QPctzh+MA4Lp0BuYk5ZZEVhoNcY= +github.com/prometheus/common v0.57.0/go.mod h1:7uRPFSUTbfZWsJ7MHY56sqt7hLQu3bxXHDnNhl8E9qI= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= @@ -494,7 +490,6 @@ github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk= github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo= -github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI= @@ -527,6 +522,8 @@ github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaO github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= github.com/uber/jaeger-lib v2.4.1+incompatible/go.mod h1:ComeNDZlWwrWnDv8aPp0Ba6+uUTzImX/AauajbLI56U= +github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= +github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82 h1:BHyfKlQyqbsFN5p3IfnEUduWvb9is428/nNb5L3U01M= github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDfVJdfcVVdX+jpBxNmX4rDAzaS45IcYoM= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -542,31 +539,29 @@ go.etcd.io/etcd/client/v3 v3.5.15 h1:23M0eY4Fd/inNv1ZfU3AxrbbOdW79r9V9Rl62Nm6ip4 go.etcd.io/etcd/client/v3 v3.5.15/go.mod h1:CLSJxrYjvLtHsrPKsy7LmZEE+DK2ktfd2bN4RhBMwlU= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 h1:9G6E0TXzGFVfTnawRzrPl83iHOAV7L8NJiR8RSGYV1g= -go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0/go.mod h1:azvtTADFQJA8mX80jIH/akaE7h+dbm/sVuaHqN13w74= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 h1:4K4tsIXefpVJtvA/8srF4V4y0akAoPHkIslgAkjixJA= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0/go.mod h1:jjdQuTGVsXV4vSs+CJ2qYDeDPf9yIJV23qlIzBm73Vg= -go.opentelemetry.io/otel v1.28.0 h1:/SqNcYk+idO0CxKEUOtKQClMK/MimZihKYMruSMViUo= -go.opentelemetry.io/otel v1.28.0/go.mod h1:q68ijF8Fc8CnMHKyzqL6akLO46ePnjkgfIMIjUIX9z4= -go.opentelemetry.io/otel/metric v1.28.0 h1:f0HGvSl1KRAU1DLgLGFjrwVyismPlnuU6JD6bOeuA5Q= -go.opentelemetry.io/otel/metric v1.28.0/go.mod h1:Fb1eVBFZmLVTMb6PPohq3TO9IIhUisDsbJoL/+uQW4s= -go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= -go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= -go.opentelemetry.io/otel/trace v1.28.0 h1:GhQ9cUuQGmNDd5BTCP2dAvv75RdMxEfTmYejp+lkx9g= -go.opentelemetry.io/otel/trace v1.28.0/go.mod h1:jPyXzNPg6da9+38HEwElrQiHlVMTnVfM3/yv2OlIHaI= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 h1:r6I7RJCN86bpD/FQwedZ0vSixDpwuWREjW9oRMsmqDc= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0/go.mod h1:B9yO6b04uB80CzjedvewuqDhxJxi11s7/GtiGa8bAjI= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0 h1:TT4fX+nBOA/+LUkobKGW1ydGcn+G3vRw9+g5HwCphpk= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.54.0/go.mod h1:L7UH0GbB0p47T4Rri3uHjbpCFYrVrwc1I25QhNPiGK8= +go.opentelemetry.io/otel v1.29.0 h1:PdomN/Al4q/lN6iBJEN3AwPvUiHPMlt93c8bqTG5Llw= +go.opentelemetry.io/otel v1.29.0/go.mod h1:N/WtXPs1CNCUEx+Agz5uouwCba+i+bJGFicT8SR4NP8= +go.opentelemetry.io/otel/metric v1.29.0 h1:vPf/HFWTNkPu1aYeIsc98l4ktOQaL6LeSoeV2g+8YLc= +go.opentelemetry.io/otel/metric v1.29.0/go.mod h1:auu/QWieFVWx+DmQOUMgj0F8LHWdgalxXqvp7BII/W8= +go.opentelemetry.io/otel/sdk v1.29.0 h1:vkqKjk7gwhS8VaWb0POZKmIEDimRCMsopNYnriHyryo= +go.opentelemetry.io/otel/sdk v1.29.0/go.mod h1:pM8Dx5WKnvxLCb+8lG1PRNIDxu9g9b9g59Qr7hfAAok= +go.opentelemetry.io/otel/trace v1.29.0 h1:J/8ZNK4XgR7a21DZUAsbF8pZ5Jcw1VhACmnYt39JTi4= +go.opentelemetry.io/otel/trace v1.29.0/go.mod h1:eHl3w0sp3paPkYstJOmAimxhiFXPg+MMTlEh3nsQgWQ= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE= go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= -go.uber.org/goleak v1.1.11/go.mod h1:cwTWslyiVhfpKIDGSZEM2HlOvcqm+tG4zioyIeLoqMQ= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= -go.uber.org/zap v1.24.0/go.mod h1:2kMP+WWQ8aoFoedH3T2sq6iJ2yDWpHbP0f6MQbS9Gkg= go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= @@ -670,7 +665,6 @@ golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U= golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190213192042-740235f6c0d8/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= @@ -681,7 +675,6 @@ golang.org/x/tools v0.0.0-20200505023115-26f46d2f7ef8/go.mod h1:EkVYQZoAsY45+roY golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= -golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -704,8 +697,8 @@ google.golang.org/genproto v0.0.0-20240814211410-ddb44dafa142 h1:oLiyxGgE+rt22du google.golang.org/genproto v0.0.0-20240814211410-ddb44dafa142/go.mod h1:G11eXq53iI5Q+kyNOmCvnzBaxEA2Q/Ik5Tj7nqBE8j4= google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142 h1:wKguEg1hsxI2/L3hUYrpo1RVi48K+uTyzKqprwLXsb8= google.golang.org/genproto/googleapis/api v0.0.0-20240814211410-ddb44dafa142/go.mod h1:d6be+8HhtEtucleCbxpPW9PA9XwISACu8nvpPqF0BVo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= @@ -735,6 +728,8 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= +gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.41.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= @@ -751,42 +746,41 @@ gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= honnef.co/go/gotraceui v0.2.0 h1:dmNsfQ9Vl3GwbiVD7Z8d/osC6WtGGrasyrC2suc4ZIQ= honnef.co/go/gotraceui v0.2.0/go.mod h1:qHo4/W75cA3bX0QQoSvDjbJa4R8mAyyFjbWAj63XElc= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -k8s.io/api v0.28.5 h1:XIPNr3nBgTEaCdEiwZ+dXaO9SB4NeTOZ2pNDRrFgfb4= -k8s.io/api v0.28.5/go.mod h1:98zkTCc60iSnqqCIyCB1GI7PYDiRDYTSfL0PRIxpM4c= -k8s.io/apiextensions-apiserver v0.28.5 h1:YKW9O9T/0Gkyl6LTFDLIhCbouSRh+pHt2vMLB38Snfc= -k8s.io/apiextensions-apiserver v0.28.5/go.mod h1:7p7TQ0X9zCJLNFlOTi5dncAi2dkPsdsrcvu5ILa7PEk= -k8s.io/apimachinery v0.28.5 h1:EEj2q1qdTcv2p5wl88KavAn3VlFRjREgRu8Sm/EuMPY= -k8s.io/apimachinery v0.28.5/go.mod h1:wI37ncBvfAoswfq626yPTe6Bz1c22L7uaJ8dho83mgg= -k8s.io/apiserver v0.28.5 h1:3hRmQvqkWPCQr6kYi9lrMQF84V8/ScNx/8VyjhbPTi4= -k8s.io/apiserver v0.28.5/go.mod h1:tLFNbfELieGsn/utLLdSarJ99MjguBe11jkKITe3z4w= -k8s.io/client-go v0.28.5 h1:6UNmc33vuJhh3+SAOEKku3QnKa+DtPKGnhO2MR0IEbk= -k8s.io/client-go v0.28.5/go.mod h1:+pt086yx1i0HAlHzM9S+RZQDqdlzuXFl4hY01uhpcpA= -k8s.io/component-base v0.28.5 h1:uFCW7USa8Fpme8dVtn2ZrdVaUPBRDwYJ+kNrV9OO1Cc= -k8s.io/component-base v0.28.5/go.mod h1:gw2d8O28okS9RrsPuJnD2mFl2It0HH9neHiGi2xoXcY= -k8s.io/gengo v0.0.0-20190128074634-0689ccc1d7d6/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= +k8s.io/api v0.31.0 h1:b9LiSjR2ym/SzTOlfMHm1tr7/21aD7fSkqgD/CVJBCo= +k8s.io/api v0.31.0/go.mod h1:0YiFF+JfFxMM6+1hQei8FY8M7s1Mth+z/q7eF1aJkTE= +k8s.io/apiextensions-apiserver v0.31.0 h1:fZgCVhGwsclj3qCw1buVXCV6khjRzKC5eCFt24kyLSk= +k8s.io/apiextensions-apiserver v0.31.0/go.mod h1:b9aMDEYaEe5sdK+1T0KU78ApR/5ZVp4i56VacZYEHxk= +k8s.io/apimachinery v0.31.0 h1:m9jOiSr3FoSSL5WO9bjm1n6B9KROYYgNZOb4tyZ1lBc= +k8s.io/apimachinery v0.31.0/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= +k8s.io/apiserver v0.31.0 h1:p+2dgJjy+bk+B1Csz+mc2wl5gHwvNkC9QJV+w55LVrY= +k8s.io/apiserver v0.31.0/go.mod h1:KI9ox5Yu902iBnnyMmy7ajonhKnkeZYJhTZ/YI+WEMk= +k8s.io/client-go v0.31.0 h1:QqEJzNjbN2Yv1H79SsS+SWnXkBgVu4Pj3CJQgbx0gI8= +k8s.io/client-go v0.31.0/go.mod h1:Y9wvC76g4fLjmU0BA+rV+h2cncoadjvjjkkIGoTLcGU= +k8s.io/component-base v0.31.0 h1:/KIzGM5EvPNQcYgwq5NwoQBaOlVFrghoVGr8lG6vNRs= +k8s.io/component-base v0.31.0/go.mod h1:TYVuzI1QmN4L5ItVdMSXKvH7/DtvIuas5/mm8YT3rTo= +k8s.io/gengo v0.0.0-20201203183100-97869a43a9d9/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= k8s.io/gengo v0.0.0-20221011193443-fad74ee6edd9 h1:iu3o/SxaHVI7tKPtkGzD3M9IzrE21j+CUKH98NQJ8Ms= k8s.io/gengo v0.0.0-20221011193443-fad74ee6edd9/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= k8s.io/klog v0.2.0/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= k8s.io/klog v1.0.0 h1:Pt+yjF5aB1xDSVbau4VsWe+dQNzA0qv1LlXdC2dF6Q8= k8s.io/klog v1.0.0/go.mod h1:4Bi6QPql/J/LkTDqv7R/cd3hPo4k2DG6Ptcz060Ez5I= k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= -k8s.io/klog/v2 v2.120.1 h1:QXU6cPEOIslTGvZaXvFWiP9VKyeet3sawzTOvdXb4Vw= -k8s.io/klog/v2 v2.120.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f h1:0LQagt0gDpKqvIkAMPaRGcXawNMouPECM1+F9BVxEaM= -k8s.io/kube-openapi v0.0.0-20240430033511-f0e62f92d13f/go.mod h1:S9tOR0FxgyusSNR+MboCuiDpVWkAifZvaYI1Q2ubgro= -k8s.io/kubectl v0.28.5 h1:jq8xtiCCZPR8Cl/Qe1D7bLU0h8KtcunwfROqIekCUeU= -k8s.io/kubectl v0.28.5/go.mod h1:9WiwzqeKs3vLiDtEQPbjhqqysX+BIVMLt7C7gN+T5w8= -k8s.io/kubernetes v1.28.5 h1:sqgm0Tk6lqfsfcLUxZ0rfNmtugtABSLUhCqhXtfV1C0= -k8s.io/kubernetes v1.28.5/go.mod h1:lRbvAZMgn+BrOtymmJAp85Jsa7GlL01av29axiPJ+E0= -k8s.io/utils v0.0.0-20240502163921-fe8a2dddb1d0 h1:jgGTlFYnhF1PM1Ax/lAlxUPE+KfCIXHaathvJg1C3ak= -k8s.io/utils v0.0.0-20240502163921-fe8a2dddb1d0/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= +k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= +k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 h1:GKE9U8BH16uynoxQii0auTjmmmuZ3O0LFMN6S0lPPhI= +k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2/go.mod h1:coRQXBK9NxO98XUv3ZD6AK3xzHCxV6+b7lrquKwaKzA= +k8s.io/kubectl v0.31.0 h1:kANwAAPVY02r4U4jARP/C+Q1sssCcN/1p9Nk+7BQKVg= +k8s.io/kubectl v0.31.0/go.mod h1:pB47hhFypGsaHAPjlwrNbvhXgmuAr01ZBvAIIUaI8d4= +k8s.io/kubernetes v1.31.0 h1:sYAB12TTWexXKp4RxqJMm/7EC+P0mNOgn4Xdj5eu7HM= +k8s.io/kubernetes v1.31.0/go.mod h1:UTpGn7nxrUrPWw5hNIYTAjodcWIvLakgHpLtfrr6GC8= +k8s.io/utils v0.0.0-20240821151609-f90d01438635 h1:2wThSvJoW/Ncn9TmQEYXRnevZXi2duqHWf5OX9S3zjI= +k8s.io/utils v0.0.0-20240821151609-f90d01438635/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= modernc.org/libc v1.59.4 h1:kas1A6v59SN7iJIy4BQ/o5djZC1VO3pPhwc7HS4Atco= modernc.org/libc v1.59.4/go.mod h1:EY/egGEU7Ju66eU6SBqCNYaFUDuc4npICkMWnU5EE3A= modernc.org/mathutil v1.6.0 h1:fRe9+AmYlaej+64JsEEhoWuAYBkOtQiMEU7n/XgfYi4= @@ -795,10 +789,10 @@ modernc.org/memory v1.8.0 h1:IqGTL6eFMaDZZhEWwcREgeMXYwmW83LYW8cROZYkg+E= modernc.org/memory v1.8.0/go.mod h1:XPZ936zp5OMKGWPqbD3JShgd/ZoQ7899TUuQqxY+peU= modernc.org/sqlite v1.32.0 h1:6BM4uGza7bWypsw4fdLRsLxut6bHe4c58VeqjRgST8s= modernc.org/sqlite v1.32.0/go.mod h1:UqoylwmTb9F+IqXERT8bW9zzOWN8qwAIcLdzeBZs4hA= -sigs.k8s.io/controller-runtime v0.16.3 h1:2TuvuokmfXvDUamSx1SuAOO3eTyye+47mJCigwG62c4= -sigs.k8s.io/controller-runtime v0.16.3/go.mod h1:j7bialYoSn142nv9sCOJmQgDXQXxnroFU4VnX/brVJ0= -sigs.k8s.io/controller-tools v0.11.3 h1:T1xzLkog9saiyQSLz1XOImu4OcbdXWytc5cmYsBeBiE= -sigs.k8s.io/controller-tools v0.11.3/go.mod h1:qcfX7jfcfYD/b7lAhvqAyTbt/px4GpvN88WKLFFv7p8= +sigs.k8s.io/controller-runtime v0.19.0 h1:nWVM7aq+Il2ABxwiCizrVDSlmDcshi9llbaFbC0ji/Q= +sigs.k8s.io/controller-runtime v0.19.0/go.mod h1:iRmWllt8IlaLjvTTDLhRBXIEtkCK6hwVBJJsYS9Ajf4= +sigs.k8s.io/controller-tools v0.16.1 h1:gvIsZm+2aimFDIBiDKumR7EBkc+oLxljoUVfRbDI6RI= +sigs.k8s.io/controller-tools v0.16.1/go.mod h1:0I0xqjR65YTfoO12iR+mZR6s6UAVcUARgXRlsu0ljB0= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= sigs.k8s.io/kustomize v2.0.3+incompatible h1:JUufWFNlI44MdtnjUqVnvh29rR37PQFzPbLXqhyOyX0= diff --git a/pkg/apis/planetscale/v2/zz_generated.deepcopy.go b/pkg/apis/planetscale/v2/zz_generated.deepcopy.go index 4db30177..02ceb9a1 100644 --- a/pkg/apis/planetscale/v2/zz_generated.deepcopy.go +++ b/pkg/apis/planetscale/v2/zz_generated.deepcopy.go @@ -1,5 +1,4 @@ //go:build !ignore_autogenerated -// +build !ignore_autogenerated // Code generated by controller-gen. DO NOT EDIT. diff --git a/pkg/controller/etcdlockserver/etcdlockserver_controller.go b/pkg/controller/etcdlockserver/etcdlockserver_controller.go index 5c2657dd..6c03758a 100644 --- a/pkg/controller/etcdlockserver/etcdlockserver_controller.go +++ b/pkg/controller/etcdlockserver/etcdlockserver_controller.go @@ -93,18 +93,18 @@ func add(mgr manager.Manager, r reconcile.Reconciler) error { } // Watch for changes to primary resource EtcdLockserver - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.EtcdLockserver{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.EtcdLockserver{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.EtcdLockserver]{})); err != nil { return err } // Watch for changes to secondary resources and requeue the owner EtcdLockserver. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.EtcdLockserver{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err diff --git a/pkg/controller/vitessbackupschedule/vitessbackupschedule_controller.go b/pkg/controller/vitessbackupschedule/vitessbackupschedule_controller.go index 4ce56b21..c105fe9d 100644 --- a/pkg/controller/vitessbackupschedule/vitessbackupschedule_controller.go +++ b/pkg/controller/vitessbackupschedule/vitessbackupschedule_controller.go @@ -123,18 +123,18 @@ func add(mgr manager.Manager, r *ReconcileVitessBackupsSchedule) error { } // Watch for changes to primary resource VitessBackupSchedule - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackupSchedule{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackupSchedule{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessBackupSchedule]{})); err != nil { return err } // Watch for changes to kbatch.Job and requeue the owner VitessBackupSchedule. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessBackupStorage{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } diff --git a/pkg/controller/vitessbackupstorage/subcontroller/subcontroller.go b/pkg/controller/vitessbackupstorage/subcontroller/subcontroller.go index 2396a6a0..668a59b6 100644 --- a/pkg/controller/vitessbackupstorage/subcontroller/subcontroller.go +++ b/pkg/controller/vitessbackupstorage/subcontroller/subcontroller.go @@ -131,25 +131,25 @@ func add(mgr manager.Manager, r *ReconcileVitessBackupStorage) error { } // Watch for changes to primary resource VitessBackupStorage - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackupStorage{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackupStorage{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessBackupStorage]{})); err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessBackupStorage. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessBackupStorage{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } } // Periodically resync even when no Kubernetes events have come in. - if err := c.Watch(r.resync.WatchSource(), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(r.resync.WatchSource()); err != nil { return err } diff --git a/pkg/controller/vitessbackupstorage/vitessbackupstorage_controller.go b/pkg/controller/vitessbackupstorage/vitessbackupstorage_controller.go index c451181a..abb0e269 100644 --- a/pkg/controller/vitessbackupstorage/vitessbackupstorage_controller.go +++ b/pkg/controller/vitessbackupstorage/vitessbackupstorage_controller.go @@ -91,18 +91,18 @@ func add(mgr manager.Manager, r *ReconcileVitessBackupStorage) error { } // Watch for changes to primary resource VitessBackupStorage - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackupStorage{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackupStorage{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessBackupStorage]{})); err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessBackupStorage. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessBackupStorage{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } diff --git a/pkg/controller/vitesscell/reconcile_keyspaces.go b/pkg/controller/vitesscell/reconcile_keyspaces.go index f9c7c785..d2785593 100644 --- a/pkg/controller/vitesscell/reconcile_keyspaces.go +++ b/pkg/controller/vitesscell/reconcile_keyspaces.go @@ -35,9 +35,7 @@ import ( // Map maps a VitessKeyspace to a list of requests for VitessCells // in which the keyspace is deployed. -func keyspaceCellsMapper(ctx context.Context, obj client.Object) []reconcile.Request { - vtk := obj.(*planetscalev2.VitessKeyspace) - +func keyspaceCellsMapper(ctx context.Context, vtk *planetscalev2.VitessKeyspace) []reconcile.Request { // Request reconciliation for all the VitessCells to which this VitessKeyspace is deployed. var requests []reconcile.Request for _, cellName := range vtk.Spec.CellNames() { diff --git a/pkg/controller/vitesscell/reconcile_vtgate.go b/pkg/controller/vitesscell/reconcile_vtgate.go index 136e5055..12dd2688 100644 --- a/pkg/controller/vitesscell/reconcile_vtgate.go +++ b/pkg/controller/vitesscell/reconcile_vtgate.go @@ -41,8 +41,7 @@ type secretCellsMapper struct { // Map maps a Secret to a list of requests for VitessCells // that reference the secret. -func (m *secretCellsMapper) Map(ctx context.Context, obj client.Object) []reconcile.Request { - secret := obj.(*corev1.Secret) +func (m *secretCellsMapper) Map(ctx context.Context, secret *corev1.Secret) []reconcile.Request { secretName := secret.Name cellList := &planetscalev2.VitessCellList{} diff --git a/pkg/controller/vitesscell/vitesscell_controller.go b/pkg/controller/vitesscell/vitesscell_controller.go index 025f7ef9..0605c9f9 100644 --- a/pkg/controller/vitesscell/vitesscell_controller.go +++ b/pkg/controller/vitesscell/vitesscell_controller.go @@ -97,26 +97,26 @@ func add(mgr manager.Manager, r *ReconcileVitessCell) error { } // Watch for changes to primary resource VitessCell - err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessCell{}), &handler.EnqueueRequestForObject{}) + err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessCell{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessCell]{})) if err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessCell. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessCell{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } } // Watch for changes in VitessKeyspaces, which we don't own, and requeue associated VitessCells. - err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessKeyspace{}), handler.EnqueueRequestsFromMapFunc(keyspaceCellsMapper)) + err = c.Watch(source.Kind[*planetscalev2.VitessKeyspace](mgr.GetCache(), &planetscalev2.VitessKeyspace{}, handler.TypedEnqueueRequestsFromMapFunc[*planetscalev2.VitessKeyspace](keyspaceCellsMapper))) if err != nil { return err } @@ -125,13 +125,13 @@ func add(mgr manager.Manager, r *ReconcileVitessCell) error { scm := &secretCellsMapper{ client: mgr.GetClient(), } - err = c.Watch(source.Kind(mgr.GetCache(), &corev1.Secret{}), handler.EnqueueRequestsFromMapFunc(scm.Map)) + err = c.Watch(source.Kind(mgr.GetCache(), &corev1.Secret{}, handler.TypedEnqueueRequestsFromMapFunc[*corev1.Secret](scm.Map))) if err != nil { return err } // Periodically resync even when no Kubernetes events have come in. - if err := c.Watch(r.resync.WatchSource(), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(r.resync.WatchSource()); err != nil { return err } diff --git a/pkg/controller/vitesscluster/vitesscluster_controller.go b/pkg/controller/vitesscluster/vitesscluster_controller.go index a7d2a7bb..f5e1d4c5 100644 --- a/pkg/controller/vitesscluster/vitesscluster_controller.go +++ b/pkg/controller/vitesscluster/vitesscluster_controller.go @@ -99,25 +99,25 @@ func add(mgr manager.Manager, r *ReconcileVitessCluster) error { } // Watch for changes to primary resource VitessCluster - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessCluster{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessCluster{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessCluster]{})); err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessCluster. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessCluster{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } } // Periodically resync even when no Kubernetes events have come in. - if err := c.Watch(r.resync.WatchSource(), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(r.resync.WatchSource()); err != nil { return err } diff --git a/pkg/controller/vitesskeyspace/vitesskeyspace_controller.go b/pkg/controller/vitesskeyspace/vitesskeyspace_controller.go index 2f87c61f..70474692 100644 --- a/pkg/controller/vitesskeyspace/vitesskeyspace_controller.go +++ b/pkg/controller/vitesskeyspace/vitesskeyspace_controller.go @@ -98,26 +98,26 @@ func add(mgr manager.Manager, r *ReconcileVitessKeyspace) error { } // Watch for changes to primary resource VitessKeyspace - err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessKeyspace{}), &handler.EnqueueRequestForObject{}) + err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessKeyspace{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessKeyspace]{})) if err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessKeyspace. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessKeyspace{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } } // Periodically resync even when no Kubernetes events have come in. - if err := c.Watch(r.resync.WatchSource(), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(r.resync.WatchSource()); err != nil { return err } diff --git a/pkg/controller/vitessshard/vitessshard_controller.go b/pkg/controller/vitessshard/vitessshard_controller.go index 0cf69484..50c77df6 100644 --- a/pkg/controller/vitessshard/vitessshard_controller.go +++ b/pkg/controller/vitessshard/vitessshard_controller.go @@ -93,31 +93,31 @@ func add(mgr manager.Manager, r *ReconcileVitessShard) error { } // Watch for changes to primary resource VitessShard - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessShard{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessShard{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessShard]{})); err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessShard. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessShard{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } } // Watch for changes in VitessBackups, which we don't own, and requeue associated VitessShards. - err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackup{}), handler.EnqueueRequestsFromMapFunc(shardBackupMapper)) + err = c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessBackup{}, handler.TypedEnqueueRequestsFromMapFunc[*planetscalev2.VitessBackup](shardBackupMapper))) if err != nil { return err } // Periodically resync even when no Kubernetes events have come in. - if err := c.Watch(r.resync.WatchSource(), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(r.resync.WatchSource()); err != nil { return err } @@ -228,9 +228,7 @@ func (r *ReconcileVitessShard) Reconcile(cctx context.Context, request reconcile } // Map maps a VitessBackup to a list of requests for VitessShards. -func shardBackupMapper(ctx context.Context, obj client.Object) []reconcile.Request { - vtb := obj.(*planetscalev2.VitessBackup) - +func shardBackupMapper(ctx context.Context, vtb *planetscalev2.VitessBackup) []reconcile.Request { // Request reconciliation for the VitessShard that matches this VitessBackup. return []reconcile.Request{ { diff --git a/pkg/controller/vitessshardreplication/vitessshardreplication_controller.go b/pkg/controller/vitessshardreplication/vitessshardreplication_controller.go index 8a217085..3b5728a8 100644 --- a/pkg/controller/vitessshardreplication/vitessshardreplication_controller.go +++ b/pkg/controller/vitessshardreplication/vitessshardreplication_controller.go @@ -103,25 +103,25 @@ func add(mgr manager.Manager, r *ReconcileVitessShard) error { } // Watch for changes to primary resource VitessShard - if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessShard{}), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(source.Kind(mgr.GetCache(), &planetscalev2.VitessShard{}, &handler.TypedEnqueueRequestForObject[*planetscalev2.VitessShard]{})); err != nil { return err } // Watch for changes to secondary resources and requeue the owner VitessShard. for _, resource := range watchResources { - err := c.Watch(source.Kind(mgr.GetCache(), resource), handler.EnqueueRequestForOwner( + err := c.Watch(source.Kind(mgr.GetCache(), resource, handler.EnqueueRequestForOwner( mgr.GetScheme(), mgr.GetRESTMapper(), &planetscalev2.VitessShard{}, handler.OnlyControllerOwner(), - )) + ))) if err != nil { return err } } // Periodically resync even when no Kubernetes events have come in. - if err := c.Watch(r.resync.WatchSource(), &handler.EnqueueRequestForObject{}); err != nil { + if err := c.Watch(r.resync.WatchSource()); err != nil { return err } diff --git a/pkg/operator/resync/periodic.go b/pkg/operator/resync/periodic.go index 90716312..b070f05f 100644 --- a/pkg/operator/resync/periodic.go +++ b/pkg/operator/resync/periodic.go @@ -37,6 +37,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/event" + "sigs.k8s.io/controller-runtime/pkg/handler" "sigs.k8s.io/controller-runtime/pkg/source" ) @@ -67,7 +68,7 @@ func NewPeriodic(name string, period time.Duration) *Periodic { // WatchSource returns the source.Source that can be passed to Controller.Watch() // to plug this resync into the controller. func (p *Periodic) WatchSource() source.Source { - return &source.Channel{Source: p.trigger} + return source.Channel(p.trigger, &handler.EnqueueRequestForObject{}) } // Enqueue adds the given object to the periodic resync queue. diff --git a/pkg/operator/vttablet/backup.go b/pkg/operator/vttablet/backup.go index 5c34ea18..435c70f1 100644 --- a/pkg/operator/vttablet/backup.go +++ b/pkg/operator/vttablet/backup.go @@ -19,11 +19,11 @@ package vttablet import ( "fmt" + corev1 "k8s.io/api/core/v1" planetscalev2 "planetscale.dev/vitess-operator/pkg/apis/planetscale/v2" "planetscale.dev/vitess-operator/pkg/operator/lazy" "planetscale.dev/vitess-operator/pkg/operator/vitess" "planetscale.dev/vitess-operator/pkg/operator/vitessbackup" - corev1 "k8s.io/api/core/v1" ) func xtrabackupFlags(spec *Spec, backupThreads, restoreThreads int) vitess.Flags { diff --git a/test/endtoend/operator/operator-latest.yaml b/test/endtoend/operator/operator-latest.yaml index b2e6122f..90e6a0a7 100644 --- a/test/endtoend/operator/operator-latest.yaml +++ b/test/endtoend/operator/operator-latest.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 @@ -1679,6 +1702,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -1798,6 +1823,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1836,6 +1862,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -1867,6 +1894,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -1890,6 +1919,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic type: object httpGet: properties: @@ -1907,6 +1937,7 @@ spec: - value type: object type: array + x-kubernetes-list-type: atomic path: type: string port: @@ -1919,6 +1950,14 @@ spec: required: - port type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object tcpSocket: properties: host: @@ -1940,6 +1979,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic type: object httpGet: properties: @@ -1957,6 +1997,7 @@ spec: - value type: object type: array + x-kubernetes-list-type: atomic path: type: string port: @@ -1969,6 +2010,14 @@ spec: required: - port type: object + sleep: + properties: + seconds: + format: int64 + type: integer + required: + - seconds + type: object tcpSocket: properties: host: @@ -1994,6 +2043,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2117,6 +2168,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -2146,18 +2198,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 +2228,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 +2243,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -2220,6 +2264,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2258,6 +2303,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2289,6 +2335,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -2308,6 +2356,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -2335,6 +2384,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2441,6 +2492,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -2470,18 +2522,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 +2552,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 +2567,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -2544,6 +2588,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2582,6 +2627,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -2613,6 +2659,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -2632,6 +2680,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -2659,6 +2708,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -2725,6 +2776,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -2846,6 +2898,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -2875,18 +2928,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 +2958,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 +2973,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -2991,6 +3036,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3029,6 +3075,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3056,6 +3103,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -3080,6 +3129,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3116,6 +3167,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3179,6 +3232,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3284,6 +3339,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -3313,18 +3369,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 +3399,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 +3414,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -3429,6 +3477,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3467,6 +3516,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3494,6 +3544,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -3518,6 +3570,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3554,6 +3608,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3617,6 +3673,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3696,6 +3754,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3734,6 +3793,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3765,6 +3825,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -3785,6 +3847,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -3897,6 +3961,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3935,6 +4000,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -3966,6 +4032,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -3989,6 +4057,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -4046,6 +4116,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -4088,6 +4160,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -4126,6 +4199,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -4157,6 +4231,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -4206,6 +4282,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -4349,8 +4427,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 +4617,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -4634,6 +4712,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -4663,18 +4742,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 +4772,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 +4787,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -4779,6 +4850,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -4817,6 +4889,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -4844,6 +4917,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -4868,6 +4943,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -4904,6 +4981,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -4967,6 +5046,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -5072,6 +5153,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -5101,18 +5183,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 +5213,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 +5228,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -5217,6 +5291,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -5255,6 +5330,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -5282,6 +5358,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -5306,6 +5384,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -5342,6 +5422,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -5405,6 +5487,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -5518,6 +5602,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -5556,6 +5641,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -5587,6 +5673,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -5607,6 +5695,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -5784,8 +5874,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 +6073,7 @@ spec: items: properties: name: + default: "" type: string type: object x-kubernetes-map-type: atomic @@ -6052,6 +6142,7 @@ spec: items: type: string type: array + x-kubernetes-list-type: atomic dataSource: properties: apiGroup: @@ -6081,18 +6172,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 +6202,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 +6217,8 @@ spec: x-kubernetes-map-type: atomic storageClassName: type: string + volumeAttributesClassName: + type: string volumeMode: type: string volumeName: @@ -6197,6 +6280,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -6235,6 +6319,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -6262,6 +6347,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -6286,6 +6373,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -6322,6 +6411,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -6385,6 +6476,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object @@ -6483,6 +6576,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -6521,6 +6615,7 @@ spec: key: type: string name: + default: "" type: string optional: type: boolean @@ -6552,6 +6647,8 @@ spec: type: string readOnly: type: boolean + recursiveReadOnly: + type: string subPath: type: string subPathExpr: @@ -6572,6 +6669,8 @@ spec: properties: name: type: string + request: + type: string required: - name type: object diff --git a/test/integration/framework/fixture.go b/test/integration/framework/fixture.go index 089684af..ea0b9f38 100644 --- a/test/integration/framework/fixture.go +++ b/test/integration/framework/fixture.go @@ -63,7 +63,7 @@ func NewFixture(ctx context.Context, t *testing.T) *Fixture { httpClient, err := rest.HTTPClientFor(config) require.NoError(t, err) - mapper, err := apiutil.NewDiscoveryRESTMapper(config, httpClient) + mapper, err := apiutil.NewDynamicRESTMapper(config, httpClient) require.NoError(t, err) kubeClient, err := client.New(config, client.Options{ diff --git a/tools/test.env b/tools/test.env index 6532efd6..f70ef965 100755 --- a/tools/test.env +++ b/tools/test.env @@ -4,4 +4,6 @@ # since this is where we install the binaries that are needed export PATH="$PATH:$PWD/tools/_bin" -export KIND_VERSION=kindest/node:v1.28.0 \ No newline at end of file +# BuildKite sets the K8S_VERSION, if it is not set (e.g. running locally) +# then we default to the latest version of K8S (1.31.0). +export KIND_VERSION="kindest/node:v${K8S_VERSION:-1.31.0}" \ No newline at end of file