Files
argocd-apps/schemas/grafana.integreatly.org/grafana_v1beta1.json
T
unkinben c17bbda89b
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/kubeconform Pipeline was successful
schemas: add grafana.integreatly.org CRD schemas
Generated from the grafana-operator v5.24.0 CRDs (added in the previous
PR) so `make kubeconform` can validate the Grafana / GrafanaDashboard /
GrafanaDatasource / GrafanaFolder CRs introduced by the grafana instance
PR. Mirrors ci/generate-schemas.sh output for the grafana CRD group.
2026-07-05 22:19:40 +10:00

8749 lines
417 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"client": {
"properties": {
"headers": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"preferIngress": {
"nullable": true,
"type": "boolean"
},
"timeout": {
"nullable": true,
"type": "integer"
},
"tls": {
"properties": {
"certSecretRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"insecureSkipVerify": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-validations": [
{
"message": "insecureSkipVerify and certSecretRef cannot be set at the same time",
"rule": "(has(self.insecureSkipVerify) && !(has(self.certSecretRef))) || (has(self.certSecretRef) && !(has(self.insecureSkipVerify)))"
}
]
},
"useKubeAuth": {
"type": "boolean"
}
},
"type": "object"
},
"config": {
"additionalProperties": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"deployment": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"minReadySeconds": {
"format": "int32",
"type": "integer"
},
"paused": {
"type": "boolean"
},
"progressDeadlineSeconds": {
"format": "int32",
"type": "integer"
},
"replicas": {
"format": "int32",
"type": "integer"
},
"revisionHistoryLimit": {
"format": "int32",
"type": "integer"
},
"selector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"strategy": {
"properties": {
"rollingUpdate": {
"properties": {
"maxSurge": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"maxUnavailable": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
},
"template": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"activeDeadlineSeconds": {
"format": "int64",
"type": "integer"
},
"affinity": {
"properties": {
"nodeAffinity": {
"properties": {
"preferredDuringSchedulingIgnoredDuringExecution": {
"items": {
"properties": {
"preference": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"matchFields": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"weight": {
"format": "int32",
"type": "integer"
}
},
"required": [
"preference",
"weight"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"requiredDuringSchedulingIgnoredDuringExecution": {
"properties": {
"nodeSelectorTerms": {
"items": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"matchFields": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"nodeSelectorTerms"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
},
"podAffinity": {
"properties": {
"preferredDuringSchedulingIgnoredDuringExecution": {
"items": {
"properties": {
"podAffinityTerm": {
"properties": {
"labelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"matchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"mismatchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"namespaceSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"namespaces": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"topologyKey": {
"type": "string"
}
},
"required": [
"topologyKey"
],
"type": "object"
},
"weight": {
"format": "int32",
"type": "integer"
}
},
"required": [
"podAffinityTerm",
"weight"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"requiredDuringSchedulingIgnoredDuringExecution": {
"items": {
"properties": {
"labelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"matchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"mismatchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"namespaceSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"namespaces": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"topologyKey": {
"type": "string"
}
},
"required": [
"topologyKey"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"podAntiAffinity": {
"properties": {
"preferredDuringSchedulingIgnoredDuringExecution": {
"items": {
"properties": {
"podAffinityTerm": {
"properties": {
"labelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"matchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"mismatchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"namespaceSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"namespaces": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"topologyKey": {
"type": "string"
}
},
"required": [
"topologyKey"
],
"type": "object"
},
"weight": {
"format": "int32",
"type": "integer"
}
},
"required": [
"podAffinityTerm",
"weight"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"requiredDuringSchedulingIgnoredDuringExecution": {
"items": {
"properties": {
"labelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"matchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"mismatchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"namespaceSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"namespaces": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"topologyKey": {
"type": "string"
}
},
"required": [
"topologyKey"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
}
},
"type": "object"
},
"automountServiceAccountToken": {
"type": "boolean"
},
"containers": {
"items": {
"properties": {
"args": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"env": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"valueFrom": {
"properties": {
"configMapKeyRef": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"fieldRef": {
"properties": {
"apiVersion": {
"type": "string"
},
"fieldPath": {
"type": "string"
}
},
"required": [
"fieldPath"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"fileKeyRef": {
"properties": {
"key": {
"type": "string"
},
"optional": {
"default": false,
"type": "boolean"
},
"path": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"required": [
"key",
"path",
"volumeName"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resourceFieldRef": {
"properties": {
"containerName": {
"type": "string"
},
"divisor": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"resource": {
"type": "string"
}
},
"required": [
"resource"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"secretKeyRef": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"envFrom": {
"items": {
"properties": {
"configMapRef": {
"properties": {
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"prefix": {
"type": "string"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"image": {
"type": "string"
},
"imagePullPolicy": {
"type": "string"
},
"lifecycle": {
"properties": {
"postStart": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"sleep": {
"properties": {
"seconds": {
"format": "int64",
"type": "integer"
}
},
"required": [
"seconds"
],
"type": "object"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
}
},
"type": "object"
},
"preStop": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"sleep": {
"properties": {
"seconds": {
"format": "int64",
"type": "integer"
}
},
"required": [
"seconds"
],
"type": "object"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
}
},
"type": "object"
},
"stopSignal": {
"type": "string"
}
},
"type": "object"
},
"livenessProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"ports": {
"items": {
"properties": {
"containerPort": {
"format": "int32",
"type": "integer"
},
"hostIP": {
"type": "string"
},
"hostPort": {
"format": "int32",
"type": "integer"
},
"name": {
"type": "string"
},
"protocol": {
"default": "TCP",
"type": "string"
}
},
"required": [
"containerPort"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"containerPort",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"readinessProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"resizePolicy": {
"items": {
"properties": {
"resourceName": {
"type": "string"
},
"restartPolicy": {
"type": "string"
}
},
"required": [
"resourceName",
"restartPolicy"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"resources": {
"properties": {
"claims": {
"items": {
"properties": {
"name": {
"type": "string"
},
"request": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"restartPolicy": {
"type": "string"
},
"restartPolicyRules": {
"items": {
"properties": {
"action": {
"type": "string"
},
"exitCodes": {
"properties": {
"operator": {
"type": "string"
},
"values": {
"items": {
"format": "int32",
"type": "integer"
},
"type": "array",
"x-kubernetes-list-type": "set"
}
},
"required": [
"operator"
],
"type": "object"
}
},
"required": [
"action"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"securityContext": {
"properties": {
"allowPrivilegeEscalation": {
"type": "boolean"
},
"appArmorProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"capabilities": {
"properties": {
"add": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"drop": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"privileged": {
"type": "boolean"
},
"procMount": {
"type": "string"
},
"readOnlyRootFilesystem": {
"type": "boolean"
},
"runAsGroup": {
"format": "int64",
"type": "integer"
},
"runAsNonRoot": {
"type": "boolean"
},
"runAsUser": {
"format": "int64",
"type": "integer"
},
"seLinuxOptions": {
"properties": {
"level": {
"type": "string"
},
"role": {
"type": "string"
},
"type": {
"type": "string"
},
"user": {
"type": "string"
}
},
"type": "object"
},
"seccompProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"windowsOptions": {
"properties": {
"gmsaCredentialSpec": {
"type": "string"
},
"gmsaCredentialSpecName": {
"type": "string"
},
"hostProcess": {
"type": "boolean"
},
"runAsUserName": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"startupProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"stdin": {
"type": "boolean"
},
"stdinOnce": {
"type": "boolean"
},
"terminationMessagePath": {
"type": "string"
},
"terminationMessagePolicy": {
"type": "string"
},
"tty": {
"type": "boolean"
},
"volumeDevices": {
"items": {
"properties": {
"devicePath": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"devicePath",
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"devicePath"
],
"x-kubernetes-list-type": "map"
},
"volumeMounts": {
"items": {
"properties": {
"mountPath": {
"type": "string"
},
"mountPropagation": {
"type": "string"
},
"name": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"recursiveReadOnly": {
"type": "string"
},
"subPath": {
"type": "string"
},
"subPathExpr": {
"type": "string"
}
},
"required": [
"mountPath",
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"mountPath"
],
"x-kubernetes-list-type": "map"
},
"workingDir": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
},
"dnsConfig": {
"properties": {
"nameservers": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"options": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"searches": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"dnsPolicy": {
"type": "string"
},
"enableServiceLinks": {
"type": "boolean"
},
"ephemeralContainers": {
"items": {
"properties": {
"args": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"env": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"valueFrom": {
"properties": {
"configMapKeyRef": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"fieldRef": {
"properties": {
"apiVersion": {
"type": "string"
},
"fieldPath": {
"type": "string"
}
},
"required": [
"fieldPath"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"fileKeyRef": {
"properties": {
"key": {
"type": "string"
},
"optional": {
"default": false,
"type": "boolean"
},
"path": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"required": [
"key",
"path",
"volumeName"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resourceFieldRef": {
"properties": {
"containerName": {
"type": "string"
},
"divisor": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"resource": {
"type": "string"
}
},
"required": [
"resource"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"secretKeyRef": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"envFrom": {
"items": {
"properties": {
"configMapRef": {
"properties": {
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"prefix": {
"type": "string"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"image": {
"type": "string"
},
"imagePullPolicy": {
"type": "string"
},
"lifecycle": {
"properties": {
"postStart": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"sleep": {
"properties": {
"seconds": {
"format": "int64",
"type": "integer"
}
},
"required": [
"seconds"
],
"type": "object"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
}
},
"type": "object"
},
"preStop": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"sleep": {
"properties": {
"seconds": {
"format": "int64",
"type": "integer"
}
},
"required": [
"seconds"
],
"type": "object"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
}
},
"type": "object"
},
"stopSignal": {
"type": "string"
}
},
"type": "object"
},
"livenessProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"ports": {
"items": {
"properties": {
"containerPort": {
"format": "int32",
"type": "integer"
},
"hostIP": {
"type": "string"
},
"hostPort": {
"format": "int32",
"type": "integer"
},
"name": {
"type": "string"
},
"protocol": {
"default": "TCP",
"type": "string"
}
},
"required": [
"containerPort"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"containerPort",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"readinessProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"resizePolicy": {
"items": {
"properties": {
"resourceName": {
"type": "string"
},
"restartPolicy": {
"type": "string"
}
},
"required": [
"resourceName",
"restartPolicy"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"resources": {
"properties": {
"claims": {
"items": {
"properties": {
"name": {
"type": "string"
},
"request": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"restartPolicy": {
"type": "string"
},
"restartPolicyRules": {
"items": {
"properties": {
"action": {
"type": "string"
},
"exitCodes": {
"properties": {
"operator": {
"type": "string"
},
"values": {
"items": {
"format": "int32",
"type": "integer"
},
"type": "array",
"x-kubernetes-list-type": "set"
}
},
"required": [
"operator"
],
"type": "object"
}
},
"required": [
"action"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"securityContext": {
"properties": {
"allowPrivilegeEscalation": {
"type": "boolean"
},
"appArmorProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"capabilities": {
"properties": {
"add": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"drop": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"privileged": {
"type": "boolean"
},
"procMount": {
"type": "string"
},
"readOnlyRootFilesystem": {
"type": "boolean"
},
"runAsGroup": {
"format": "int64",
"type": "integer"
},
"runAsNonRoot": {
"type": "boolean"
},
"runAsUser": {
"format": "int64",
"type": "integer"
},
"seLinuxOptions": {
"properties": {
"level": {
"type": "string"
},
"role": {
"type": "string"
},
"type": {
"type": "string"
},
"user": {
"type": "string"
}
},
"type": "object"
},
"seccompProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"windowsOptions": {
"properties": {
"gmsaCredentialSpec": {
"type": "string"
},
"gmsaCredentialSpecName": {
"type": "string"
},
"hostProcess": {
"type": "boolean"
},
"runAsUserName": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"startupProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"stdin": {
"type": "boolean"
},
"stdinOnce": {
"type": "boolean"
},
"targetContainerName": {
"type": "string"
},
"terminationMessagePath": {
"type": "string"
},
"terminationMessagePolicy": {
"type": "string"
},
"tty": {
"type": "boolean"
},
"volumeDevices": {
"items": {
"properties": {
"devicePath": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"devicePath",
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"devicePath"
],
"x-kubernetes-list-type": "map"
},
"volumeMounts": {
"items": {
"properties": {
"mountPath": {
"type": "string"
},
"mountPropagation": {
"type": "string"
},
"name": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"recursiveReadOnly": {
"type": "string"
},
"subPath": {
"type": "string"
},
"subPathExpr": {
"type": "string"
}
},
"required": [
"mountPath",
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"mountPath"
],
"x-kubernetes-list-type": "map"
},
"workingDir": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
},
"hostAliases": {
"items": {
"properties": {
"hostnames": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ip": {
"type": "string"
}
},
"required": [
"ip"
],
"type": "object"
},
"type": "array"
},
"hostIPC": {
"type": "boolean"
},
"hostNetwork": {
"type": "boolean"
},
"hostPID": {
"type": "boolean"
},
"hostUsers": {
"type": "boolean"
},
"hostname": {
"type": "string"
},
"imagePullSecrets": {
"items": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"type": "array"
},
"initContainers": {
"items": {
"properties": {
"args": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"env": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
},
"valueFrom": {
"properties": {
"configMapKeyRef": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"fieldRef": {
"properties": {
"apiVersion": {
"type": "string"
},
"fieldPath": {
"type": "string"
}
},
"required": [
"fieldPath"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"fileKeyRef": {
"properties": {
"key": {
"type": "string"
},
"optional": {
"default": false,
"type": "boolean"
},
"path": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"required": [
"key",
"path",
"volumeName"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resourceFieldRef": {
"properties": {
"containerName": {
"type": "string"
},
"divisor": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"resource": {
"type": "string"
}
},
"required": [
"resource"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"secretKeyRef": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"envFrom": {
"items": {
"properties": {
"configMapRef": {
"properties": {
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"prefix": {
"type": "string"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"image": {
"type": "string"
},
"imagePullPolicy": {
"type": "string"
},
"lifecycle": {
"properties": {
"postStart": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"sleep": {
"properties": {
"seconds": {
"format": "int64",
"type": "integer"
}
},
"required": [
"seconds"
],
"type": "object"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
}
},
"type": "object"
},
"preStop": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"sleep": {
"properties": {
"seconds": {
"format": "int64",
"type": "integer"
}
},
"required": [
"seconds"
],
"type": "object"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
}
},
"type": "object"
},
"stopSignal": {
"type": "string"
}
},
"type": "object"
},
"livenessProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"name": {
"type": "string"
},
"ports": {
"items": {
"properties": {
"containerPort": {
"format": "int32",
"type": "integer"
},
"hostIP": {
"type": "string"
},
"hostPort": {
"format": "int32",
"type": "integer"
},
"name": {
"type": "string"
},
"protocol": {
"default": "TCP",
"type": "string"
}
},
"required": [
"containerPort"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"containerPort",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"readinessProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"resizePolicy": {
"items": {
"properties": {
"resourceName": {
"type": "string"
},
"restartPolicy": {
"type": "string"
}
},
"required": [
"resourceName",
"restartPolicy"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"resources": {
"properties": {
"claims": {
"items": {
"properties": {
"name": {
"type": "string"
},
"request": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"restartPolicy": {
"type": "string"
},
"restartPolicyRules": {
"items": {
"properties": {
"action": {
"type": "string"
},
"exitCodes": {
"properties": {
"operator": {
"type": "string"
},
"values": {
"items": {
"format": "int32",
"type": "integer"
},
"type": "array",
"x-kubernetes-list-type": "set"
}
},
"required": [
"operator"
],
"type": "object"
}
},
"required": [
"action"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"securityContext": {
"properties": {
"allowPrivilegeEscalation": {
"type": "boolean"
},
"appArmorProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"capabilities": {
"properties": {
"add": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"drop": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"privileged": {
"type": "boolean"
},
"procMount": {
"type": "string"
},
"readOnlyRootFilesystem": {
"type": "boolean"
},
"runAsGroup": {
"format": "int64",
"type": "integer"
},
"runAsNonRoot": {
"type": "boolean"
},
"runAsUser": {
"format": "int64",
"type": "integer"
},
"seLinuxOptions": {
"properties": {
"level": {
"type": "string"
},
"role": {
"type": "string"
},
"type": {
"type": "string"
},
"user": {
"type": "string"
}
},
"type": "object"
},
"seccompProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"windowsOptions": {
"properties": {
"gmsaCredentialSpec": {
"type": "string"
},
"gmsaCredentialSpecName": {
"type": "string"
},
"hostProcess": {
"type": "boolean"
},
"runAsUserName": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"startupProbe": {
"properties": {
"exec": {
"properties": {
"command": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"failureThreshold": {
"format": "int32",
"type": "integer"
},
"grpc": {
"properties": {
"port": {
"format": "int32",
"type": "integer"
},
"service": {
"default": "",
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"httpGet": {
"properties": {
"host": {
"type": "string"
},
"httpHeaders": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"scheme": {
"type": "string"
}
},
"required": [
"port"
],
"type": "object"
},
"initialDelaySeconds": {
"format": "int32",
"type": "integer"
},
"periodSeconds": {
"format": "int32",
"type": "integer"
},
"successThreshold": {
"format": "int32",
"type": "integer"
},
"tcpSocket": {
"properties": {
"host": {
"type": "string"
},
"port": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"stdin": {
"type": "boolean"
},
"stdinOnce": {
"type": "boolean"
},
"terminationMessagePath": {
"type": "string"
},
"terminationMessagePolicy": {
"type": "string"
},
"tty": {
"type": "boolean"
},
"volumeDevices": {
"items": {
"properties": {
"devicePath": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"devicePath",
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"devicePath"
],
"x-kubernetes-list-type": "map"
},
"volumeMounts": {
"items": {
"properties": {
"mountPath": {
"type": "string"
},
"mountPropagation": {
"type": "string"
},
"name": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"recursiveReadOnly": {
"type": "string"
},
"subPath": {
"type": "string"
},
"subPathExpr": {
"type": "string"
}
},
"required": [
"mountPath",
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"mountPath"
],
"x-kubernetes-list-type": "map"
},
"workingDir": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
},
"nodeName": {
"type": "string"
},
"nodeSelector": {
"additionalProperties": {
"type": "string"
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"os": {
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"overhead": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"preemptionPolicy": {
"type": "string"
},
"priority": {
"format": "int32",
"type": "integer"
},
"priorityClassName": {
"type": "string"
},
"readinessGates": {
"items": {
"properties": {
"conditionType": {
"type": "string"
}
},
"required": [
"conditionType"
],
"type": "object"
},
"type": "array"
},
"restartPolicy": {
"type": "string"
},
"runtimeClassName": {
"type": "string"
},
"schedulerName": {
"type": "string"
},
"securityContext": {
"properties": {
"appArmorProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"fsGroup": {
"format": "int64",
"type": "integer"
},
"fsGroupChangePolicy": {
"type": "string"
},
"runAsGroup": {
"format": "int64",
"type": "integer"
},
"runAsNonRoot": {
"type": "boolean"
},
"runAsUser": {
"format": "int64",
"type": "integer"
},
"seLinuxChangePolicy": {
"type": "string"
},
"seLinuxOptions": {
"properties": {
"level": {
"type": "string"
},
"role": {
"type": "string"
},
"type": {
"type": "string"
},
"user": {
"type": "string"
}
},
"type": "object"
},
"seccompProfile": {
"properties": {
"localhostProfile": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"supplementalGroups": {
"items": {
"format": "int64",
"type": "integer"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"supplementalGroupsPolicy": {
"type": "string"
},
"sysctls": {
"items": {
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"windowsOptions": {
"properties": {
"gmsaCredentialSpec": {
"type": "string"
},
"gmsaCredentialSpecName": {
"type": "string"
},
"hostProcess": {
"type": "boolean"
},
"runAsUserName": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"serviceAccount": {
"type": "string"
},
"serviceAccountName": {
"type": "string"
},
"setHostnameAsFQDN": {
"type": "boolean"
},
"shareProcessNamespace": {
"type": "boolean"
},
"subdomain": {
"type": "string"
},
"terminationGracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"tolerations": {
"items": {
"properties": {
"effect": {
"type": "string"
},
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"tolerationSeconds": {
"format": "int64",
"type": "integer"
},
"value": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"topologySpreadConstraints": {
"items": {
"properties": {
"labelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"matchLabelKeys": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"maxSkew": {
"format": "int32",
"type": "integer"
},
"minDomains": {
"format": "int32",
"type": "integer"
},
"nodeAffinityPolicy": {
"type": "string"
},
"nodeTaintsPolicy": {
"type": "string"
},
"topologyKey": {
"type": "string"
},
"whenUnsatisfiable": {
"type": "string"
}
},
"required": [
"maxSkew",
"topologyKey",
"whenUnsatisfiable"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"topologyKey",
"whenUnsatisfiable"
],
"x-kubernetes-list-type": "map"
},
"volumes": {
"items": {
"properties": {
"awsElasticBlockStore": {
"properties": {
"fsType": {
"type": "string"
},
"partition": {
"format": "int32",
"type": "integer"
},
"readOnly": {
"type": "boolean"
},
"volumeID": {
"type": "string"
}
},
"required": [
"volumeID"
],
"type": "object"
},
"azureDisk": {
"properties": {
"cachingMode": {
"type": "string"
},
"diskName": {
"type": "string"
},
"diskURI": {
"type": "string"
},
"fsType": {
"default": "ext4",
"type": "string"
},
"kind": {
"type": "string"
},
"readOnly": {
"default": false,
"type": "boolean"
}
},
"required": [
"diskName",
"diskURI"
],
"type": "object"
},
"azureFile": {
"properties": {
"readOnly": {
"type": "boolean"
},
"secretName": {
"type": "string"
},
"shareName": {
"type": "string"
}
},
"required": [
"secretName",
"shareName"
],
"type": "object"
},
"cephfs": {
"properties": {
"monitors": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"path": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"secretFile": {
"type": "string"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"user": {
"type": "string"
}
},
"required": [
"monitors"
],
"type": "object"
},
"cinder": {
"properties": {
"fsType": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"volumeID": {
"type": "string"
}
},
"required": [
"volumeID"
],
"type": "object"
},
"configMap": {
"properties": {
"defaultMode": {
"format": "int32",
"type": "integer"
},
"items": {
"items": {
"properties": {
"key": {
"type": "string"
},
"mode": {
"format": "int32",
"type": "integer"
},
"path": {
"type": "string"
}
},
"required": [
"key",
"path"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"csi": {
"properties": {
"driver": {
"type": "string"
},
"fsType": {
"type": "string"
},
"nodePublishSecretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"readOnly": {
"type": "boolean"
},
"volumeAttributes": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"required": [
"driver"
],
"type": "object"
},
"downwardAPI": {
"properties": {
"defaultMode": {
"format": "int32",
"type": "integer"
},
"items": {
"items": {
"properties": {
"fieldRef": {
"properties": {
"apiVersion": {
"type": "string"
},
"fieldPath": {
"type": "string"
}
},
"required": [
"fieldPath"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"mode": {
"format": "int32",
"type": "integer"
},
"path": {
"type": "string"
},
"resourceFieldRef": {
"properties": {
"containerName": {
"type": "string"
},
"divisor": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"resource": {
"type": "string"
}
},
"required": [
"resource"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"required": [
"path"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"emptyDir": {
"properties": {
"medium": {
"type": "string"
},
"sizeLimit": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
}
},
"type": "object"
},
"ephemeral": {
"properties": {
"volumeClaimTemplate": {
"properties": {
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"accessModes": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"dataSource": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"dataSourceRef": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"resources": {
"properties": {
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"selector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"storageClassName": {
"type": "string"
},
"volumeAttributesClassName": {
"type": "string"
},
"volumeMode": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"type": "object"
}
},
"required": [
"spec"
],
"type": "object"
}
},
"type": "object"
},
"fc": {
"properties": {
"fsType": {
"type": "string"
},
"lun": {
"format": "int32",
"type": "integer"
},
"readOnly": {
"type": "boolean"
},
"targetWWNs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"wwids": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"flexVolume": {
"properties": {
"driver": {
"type": "string"
},
"fsType": {
"type": "string"
},
"options": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"readOnly": {
"type": "boolean"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"required": [
"driver"
],
"type": "object"
},
"flocker": {
"properties": {
"datasetName": {
"type": "string"
},
"datasetUUID": {
"type": "string"
}
},
"type": "object"
},
"gcePersistentDisk": {
"properties": {
"fsType": {
"type": "string"
},
"partition": {
"format": "int32",
"type": "integer"
},
"pdName": {
"type": "string"
},
"readOnly": {
"type": "boolean"
}
},
"required": [
"pdName"
],
"type": "object"
},
"gitRepo": {
"properties": {
"directory": {
"type": "string"
},
"repository": {
"type": "string"
},
"revision": {
"type": "string"
}
},
"required": [
"repository"
],
"type": "object"
},
"glusterfs": {
"properties": {
"endpoints": {
"type": "string"
},
"path": {
"type": "string"
},
"readOnly": {
"type": "boolean"
}
},
"required": [
"endpoints",
"path"
],
"type": "object"
},
"hostPath": {
"properties": {
"path": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
},
"image": {
"properties": {
"pullPolicy": {
"type": "string"
},
"reference": {
"type": "string"
}
},
"type": "object"
},
"iscsi": {
"properties": {
"chapAuthDiscovery": {
"type": "boolean"
},
"chapAuthSession": {
"type": "boolean"
},
"fsType": {
"type": "string"
},
"initiatorName": {
"type": "string"
},
"iqn": {
"type": "string"
},
"iscsiInterface": {
"default": "default",
"type": "string"
},
"lun": {
"format": "int32",
"type": "integer"
},
"portals": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"readOnly": {
"type": "boolean"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"targetPortal": {
"type": "string"
}
},
"required": [
"iqn",
"lun",
"targetPortal"
],
"type": "object"
},
"name": {
"type": "string"
},
"nfs": {
"properties": {
"path": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"server": {
"type": "string"
}
},
"required": [
"path",
"server"
],
"type": "object"
},
"persistentVolumeClaim": {
"properties": {
"claimName": {
"type": "string"
},
"readOnly": {
"type": "boolean"
}
},
"required": [
"claimName"
],
"type": "object"
},
"photonPersistentDisk": {
"properties": {
"fsType": {
"type": "string"
},
"pdID": {
"type": "string"
}
},
"required": [
"pdID"
],
"type": "object"
},
"portworxVolume": {
"properties": {
"fsType": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"volumeID": {
"type": "string"
}
},
"required": [
"volumeID"
],
"type": "object"
},
"projected": {
"properties": {
"defaultMode": {
"format": "int32",
"type": "integer"
},
"sources": {
"items": {
"properties": {
"clusterTrustBundle": {
"properties": {
"labelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"name": {
"type": "string"
},
"optional": {
"type": "boolean"
},
"path": {
"type": "string"
},
"signerName": {
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
},
"configMap": {
"properties": {
"items": {
"items": {
"properties": {
"key": {
"type": "string"
},
"mode": {
"format": "int32",
"type": "integer"
},
"path": {
"type": "string"
}
},
"required": [
"key",
"path"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"downwardAPI": {
"properties": {
"items": {
"items": {
"properties": {
"fieldRef": {
"properties": {
"apiVersion": {
"type": "string"
},
"fieldPath": {
"type": "string"
}
},
"required": [
"fieldPath"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"mode": {
"format": "int32",
"type": "integer"
},
"path": {
"type": "string"
},
"resourceFieldRef": {
"properties": {
"containerName": {
"type": "string"
},
"divisor": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"resource": {
"type": "string"
}
},
"required": [
"resource"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"required": [
"path"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"podCertificate": {
"properties": {
"certificateChainPath": {
"type": "string"
},
"credentialBundlePath": {
"type": "string"
},
"keyPath": {
"type": "string"
},
"keyType": {
"type": "string"
},
"maxExpirationSeconds": {
"format": "int32",
"type": "integer"
},
"signerName": {
"type": "string"
},
"userAnnotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"required": [
"keyType",
"signerName"
],
"type": "object"
},
"secret": {
"properties": {
"items": {
"items": {
"properties": {
"key": {
"type": "string"
},
"mode": {
"format": "int32",
"type": "integer"
},
"path": {
"type": "string"
}
},
"required": [
"key",
"path"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"serviceAccountToken": {
"properties": {
"audience": {
"type": "string"
},
"expirationSeconds": {
"format": "int64",
"type": "integer"
},
"path": {
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"quobyte": {
"properties": {
"group": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"registry": {
"type": "string"
},
"tenant": {
"type": "string"
},
"user": {
"type": "string"
},
"volume": {
"type": "string"
}
},
"required": [
"registry",
"volume"
],
"type": "object"
},
"rbd": {
"properties": {
"fsType": {
"type": "string"
},
"image": {
"type": "string"
},
"keyring": {
"default": "/etc/ceph/keyring",
"type": "string"
},
"monitors": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"pool": {
"default": "rbd",
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"user": {
"default": "admin",
"type": "string"
}
},
"required": [
"image",
"monitors"
],
"type": "object"
},
"scaleIO": {
"properties": {
"fsType": {
"default": "xfs",
"type": "string"
},
"gateway": {
"type": "string"
},
"protectionDomain": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"sslEnabled": {
"type": "boolean"
},
"storageMode": {
"default": "ThinProvisioned",
"type": "string"
},
"storagePool": {
"type": "string"
},
"system": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"required": [
"gateway",
"secretRef",
"system"
],
"type": "object"
},
"secret": {
"properties": {
"defaultMode": {
"format": "int32",
"type": "integer"
},
"items": {
"items": {
"properties": {
"key": {
"type": "string"
},
"mode": {
"format": "int32",
"type": "integer"
},
"path": {
"type": "string"
}
},
"required": [
"key",
"path"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"optional": {
"type": "boolean"
},
"secretName": {
"type": "string"
}
},
"type": "object"
},
"storageos": {
"properties": {
"fsType": {
"type": "string"
},
"readOnly": {
"type": "boolean"
},
"secretRef": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"volumeName": {
"type": "string"
},
"volumeNamespace": {
"type": "string"
}
},
"type": "object"
},
"vsphereVolume": {
"properties": {
"fsType": {
"type": "string"
},
"storagePolicyID": {
"type": "string"
},
"storagePolicyName": {
"type": "string"
},
"volumePath": {
"type": "string"
}
},
"required": [
"volumePath"
],
"type": "object"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
},
"disableDefaultAdminSecret": {
"type": "boolean"
},
"disableDefaultSecurityContext": {
"enum": [
"Pod",
"Container",
"All"
],
"type": "string"
},
"external": {
"properties": {
"adminPassword": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"adminUser": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"apiKey": {
"properties": {
"key": {
"type": "string"
},
"name": {
"default": "",
"type": "string"
},
"optional": {
"type": "boolean"
}
},
"required": [
"key"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"tenantNamespace": {
"default": "default",
"type": "string",
"x-kubernetes-validations": [
{
"message": "Value is immutable",
"rule": "self == oldSelf"
}
]
},
"tls": {
"properties": {
"certSecretRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"insecureSkipVerify": {
"type": "boolean"
}
},
"type": "object",
"x-kubernetes-validations": [
{
"message": "insecureSkipVerify and certSecretRef cannot be set at the same time",
"rule": "(has(self.insecureSkipVerify) && !(has(self.certSecretRef))) || (has(self.certSecretRef) && !(has(self.insecureSkipVerify)))"
}
]
},
"url": {
"pattern": "^https?://.+$",
"type": "string"
}
},
"required": [
"url"
],
"type": "object"
},
"httpRoute": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"hostnames": {
"items": {
"maxLength": 253,
"minLength": 1,
"pattern": "^(\\*\\.)?[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"parentRefs": {
"items": {
"properties": {
"group": {
"default": "gateway.networking.k8s.io",
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"default": "Gateway",
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"type": "string"
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
},
"sectionName": {
"maxLength": 253,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"maxItems": 32,
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"rules": {
"items": {
"properties": {
"backendRefs": {
"items": {
"properties": {
"filters": {
"items": {
"properties": {
"cors": {
"properties": {
"allowCredentials": {
"type": "boolean"
},
"allowHeaders": {
"items": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set",
"x-kubernetes-validations": [
{
"message": "AllowHeaders cannot contain '*' alongside other methods",
"rule": "!('*' in self && self.size() > 1)"
}
]
},
"allowMethods": {
"items": {
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"DELETE",
"CONNECT",
"OPTIONS",
"TRACE",
"PATCH",
"*"
],
"type": "string"
},
"maxItems": 9,
"type": "array",
"x-kubernetes-list-type": "set",
"x-kubernetes-validations": [
{
"message": "AllowMethods cannot contain '*' alongside other methods",
"rule": "!('*' in self && self.size() > 1)"
}
]
},
"allowOrigins": {
"items": {
"maxLength": 253,
"minLength": 1,
"pattern": "(^\\*$)|(^(http(s)?):\\/\\/(((\\*\\.)?([a-zA-Z0-9\\-]+\\.)*[a-zA-Z0-9-]+|\\*)(:([0-9]{1,5}))?)$)",
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set",
"x-kubernetes-validations": [
{
"message": "AllowOrigins cannot contain '*' alongside other origins",
"rule": "!('*' in self && self.size() > 1)"
}
]
},
"exposeHeaders": {
"items": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
},
"maxAge": {
"default": 5,
"format": "int32",
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"extensionRef": {
"properties": {
"group": {
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
}
},
"required": [
"group",
"kind",
"name"
],
"type": "object"
},
"externalAuth": {
"properties": {
"backendRef": {
"properties": {
"group": {
"default": "",
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"default": "Service",
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"type": "string"
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
}
},
"required": [
"name"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Must have port for Service reference",
"rule": "(size(self.group) == 0 && self.kind == 'Service') ? has(self.port) : true"
}
]
},
"forwardBody": {
"properties": {
"maxSize": {
"type": "integer"
}
},
"type": "object"
},
"grpc": {
"properties": {
"allowedHeaders": {
"items": {
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
}
},
"type": "object"
},
"http": {
"properties": {
"allowedHeaders": {
"items": {
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
},
"allowedResponseHeaders": {
"items": {
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
},
"path": {
"maxLength": 1024,
"pattern": "^(?:[-A-Za-z0-9/._~!$&'()*+,;=:@]|[%][0-9a-fA-F]{2})+$",
"type": "string"
}
},
"type": "object"
},
"protocol": {
"enum": [
"HTTP",
"GRPC"
],
"type": "string"
}
},
"required": [
"backendRef",
"protocol"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "grpc must be specified when protocol is set to 'GRPC'",
"rule": "self.protocol == 'GRPC' ? has(self.grpc) : true"
},
{
"message": "protocol must be 'GRPC' when grpc is set",
"rule": "has(self.grpc) ? self.protocol == 'GRPC' : true"
},
{
"message": "http must be specified when protocol is set to 'HTTP'",
"rule": "self.protocol == 'HTTP' ? has(self.http) : true"
},
{
"message": "protocol must be 'HTTP' when http is set",
"rule": "has(self.http) ? self.protocol == 'HTTP' : true"
}
]
},
"requestHeaderModifier": {
"properties": {
"add": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"remove": {
"items": {
"type": "string"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "set"
},
"set": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
}
},
"type": "object"
},
"requestMirror": {
"properties": {
"backendRef": {
"properties": {
"group": {
"default": "",
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"default": "Service",
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"type": "string"
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
}
},
"required": [
"name"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Must have port for Service reference",
"rule": "(size(self.group) == 0 && self.kind == 'Service') ? has(self.port) : true"
}
]
},
"fraction": {
"properties": {
"denominator": {
"default": 100,
"format": "int32",
"minimum": 1,
"type": "integer"
},
"numerator": {
"format": "int32",
"minimum": 0,
"type": "integer"
}
},
"required": [
"numerator"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "numerator must be less than or equal to denominator",
"rule": "self.numerator <= self.denominator"
}
]
},
"percent": {
"format": "int32",
"maximum": 100,
"minimum": 0,
"type": "integer"
}
},
"required": [
"backendRef"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Only one of percent or fraction may be specified in HTTPRequestMirrorFilter",
"rule": "!(has(self.percent) && has(self.fraction))"
}
]
},
"requestRedirect": {
"properties": {
"hostname": {
"maxLength": 253,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"path": {
"properties": {
"replaceFullPath": {
"maxLength": 1024,
"type": "string"
},
"replacePrefixMatch": {
"maxLength": 1024,
"type": "string"
},
"type": {
"enum": [
"ReplaceFullPath",
"ReplacePrefixMatch"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "replaceFullPath must be specified when type is set to 'ReplaceFullPath'",
"rule": "self.type == 'ReplaceFullPath' ? has(self.replaceFullPath) : true"
},
{
"message": "type must be 'ReplaceFullPath' when replaceFullPath is set",
"rule": "has(self.replaceFullPath) ? self.type == 'ReplaceFullPath' : true"
},
{
"message": "replacePrefixMatch must be specified when type is set to 'ReplacePrefixMatch'",
"rule": "self.type == 'ReplacePrefixMatch' ? has(self.replacePrefixMatch) : true"
},
{
"message": "type must be 'ReplacePrefixMatch' when replacePrefixMatch is set",
"rule": "has(self.replacePrefixMatch) ? self.type == 'ReplacePrefixMatch' : true"
}
]
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
},
"scheme": {
"enum": [
"http",
"https"
],
"type": "string"
},
"statusCode": {
"default": 302,
"enum": [
301,
302,
303,
307,
308
],
"type": "integer"
}
},
"type": "object"
},
"responseHeaderModifier": {
"properties": {
"add": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"remove": {
"items": {
"type": "string"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "set"
},
"set": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
}
},
"type": "object"
},
"type": {
"enum": [
"RequestHeaderModifier",
"ResponseHeaderModifier",
"RequestMirror",
"RequestRedirect",
"URLRewrite",
"ExtensionRef",
"CORS"
],
"type": "string"
},
"urlRewrite": {
"properties": {
"hostname": {
"maxLength": 253,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"path": {
"properties": {
"replaceFullPath": {
"maxLength": 1024,
"type": "string"
},
"replacePrefixMatch": {
"maxLength": 1024,
"type": "string"
},
"type": {
"enum": [
"ReplaceFullPath",
"ReplacePrefixMatch"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "replaceFullPath must be specified when type is set to 'ReplaceFullPath'",
"rule": "self.type == 'ReplaceFullPath' ? has(self.replaceFullPath) : true"
},
{
"message": "type must be 'ReplaceFullPath' when replaceFullPath is set",
"rule": "has(self.replaceFullPath) ? self.type == 'ReplaceFullPath' : true"
},
{
"message": "replacePrefixMatch must be specified when type is set to 'ReplacePrefixMatch'",
"rule": "self.type == 'ReplacePrefixMatch' ? has(self.replacePrefixMatch) : true"
},
{
"message": "type must be 'ReplacePrefixMatch' when replacePrefixMatch is set",
"rule": "has(self.replacePrefixMatch) ? self.type == 'ReplacePrefixMatch' : true"
}
]
}
},
"type": "object"
}
},
"required": [
"type"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "filter.cors must be nil if the filter.type is not CORS",
"rule": "!(has(self.cors) && self.type != 'CORS')"
},
{
"message": "filter.cors must be specified for CORS filter.type",
"rule": "!(!has(self.cors) && self.type == 'CORS')"
},
{
"message": "filter.requestHeaderModifier must be nil if the filter.type is not RequestHeaderModifier",
"rule": "!(has(self.requestHeaderModifier) && self.type != 'RequestHeaderModifier')"
},
{
"message": "filter.requestHeaderModifier must be specified for RequestHeaderModifier filter.type",
"rule": "!(!has(self.requestHeaderModifier) && self.type == 'RequestHeaderModifier')"
},
{
"message": "filter.responseHeaderModifier must be nil if the filter.type is not ResponseHeaderModifier",
"rule": "!(has(self.responseHeaderModifier) && self.type != 'ResponseHeaderModifier')"
},
{
"message": "filter.responseHeaderModifier must be specified for ResponseHeaderModifier filter.type",
"rule": "!(!has(self.responseHeaderModifier) && self.type == 'ResponseHeaderModifier')"
},
{
"message": "filter.requestMirror must be nil if the filter.type is not RequestMirror",
"rule": "!(has(self.requestMirror) && self.type != 'RequestMirror')"
},
{
"message": "filter.requestMirror must be specified for RequestMirror filter.type",
"rule": "!(!has(self.requestMirror) && self.type == 'RequestMirror')"
},
{
"message": "filter.requestRedirect must be nil if the filter.type is not RequestRedirect",
"rule": "!(has(self.requestRedirect) && self.type != 'RequestRedirect')"
},
{
"message": "filter.requestRedirect must be specified for RequestRedirect filter.type",
"rule": "!(!has(self.requestRedirect) && self.type == 'RequestRedirect')"
},
{
"message": "filter.urlRewrite must be nil if the filter.type is not URLRewrite",
"rule": "!(has(self.urlRewrite) && self.type != 'URLRewrite')"
},
{
"message": "filter.urlRewrite must be specified for URLRewrite filter.type",
"rule": "!(!has(self.urlRewrite) && self.type == 'URLRewrite')"
},
{
"message": "filter.extensionRef must be nil if the filter.type is not ExtensionRef",
"rule": "!(has(self.extensionRef) && self.type != 'ExtensionRef')"
},
{
"message": "filter.extensionRef must be specified for ExtensionRef filter.type",
"rule": "!(!has(self.extensionRef) && self.type == 'ExtensionRef')"
}
]
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "atomic",
"x-kubernetes-validations": [
{
"message": "May specify either httpRouteFilterRequestRedirect or httpRouteFilterRequestRewrite, but not both",
"rule": "!(self.exists(f, f.type == 'RequestRedirect') && self.exists(f, f.type == 'URLRewrite'))"
},
{
"message": "CORS filter cannot be repeated",
"rule": "self.filter(f, f.type == 'CORS').size() <= 1"
},
{
"message": "RequestHeaderModifier filter cannot be repeated",
"rule": "self.filter(f, f.type == 'RequestHeaderModifier').size() <= 1"
},
{
"message": "ResponseHeaderModifier filter cannot be repeated",
"rule": "self.filter(f, f.type == 'ResponseHeaderModifier').size() <= 1"
},
{
"message": "RequestRedirect filter cannot be repeated",
"rule": "self.filter(f, f.type == 'RequestRedirect').size() <= 1"
},
{
"message": "URLRewrite filter cannot be repeated",
"rule": "self.filter(f, f.type == 'URLRewrite').size() <= 1"
}
]
},
"group": {
"default": "",
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"default": "Service",
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"type": "string"
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
},
"weight": {
"default": 1,
"format": "int32",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
}
},
"required": [
"name"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Must have port for Service reference",
"rule": "(size(self.group) == 0 && self.kind == 'Service') ? has(self.port) : true"
}
]
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"filters": {
"items": {
"properties": {
"cors": {
"properties": {
"allowCredentials": {
"type": "boolean"
},
"allowHeaders": {
"items": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set",
"x-kubernetes-validations": [
{
"message": "AllowHeaders cannot contain '*' alongside other methods",
"rule": "!('*' in self && self.size() > 1)"
}
]
},
"allowMethods": {
"items": {
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"DELETE",
"CONNECT",
"OPTIONS",
"TRACE",
"PATCH",
"*"
],
"type": "string"
},
"maxItems": 9,
"type": "array",
"x-kubernetes-list-type": "set",
"x-kubernetes-validations": [
{
"message": "AllowMethods cannot contain '*' alongside other methods",
"rule": "!('*' in self && self.size() > 1)"
}
]
},
"allowOrigins": {
"items": {
"maxLength": 253,
"minLength": 1,
"pattern": "(^\\*$)|(^(http(s)?):\\/\\/(((\\*\\.)?([a-zA-Z0-9\\-]+\\.)*[a-zA-Z0-9-]+|\\*)(:([0-9]{1,5}))?)$)",
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set",
"x-kubernetes-validations": [
{
"message": "AllowOrigins cannot contain '*' alongside other origins",
"rule": "!('*' in self && self.size() > 1)"
}
]
},
"exposeHeaders": {
"items": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
},
"maxAge": {
"default": 5,
"format": "int32",
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"extensionRef": {
"properties": {
"group": {
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
}
},
"required": [
"group",
"kind",
"name"
],
"type": "object"
},
"externalAuth": {
"properties": {
"backendRef": {
"properties": {
"group": {
"default": "",
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"default": "Service",
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"type": "string"
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
}
},
"required": [
"name"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Must have port for Service reference",
"rule": "(size(self.group) == 0 && self.kind == 'Service') ? has(self.port) : true"
}
]
},
"forwardBody": {
"properties": {
"maxSize": {
"type": "integer"
}
},
"type": "object"
},
"grpc": {
"properties": {
"allowedHeaders": {
"items": {
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
}
},
"type": "object"
},
"http": {
"properties": {
"allowedHeaders": {
"items": {
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
},
"allowedResponseHeaders": {
"items": {
"type": "string"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "set"
},
"path": {
"maxLength": 1024,
"pattern": "^(?:[-A-Za-z0-9/._~!$&'()*+,;=:@]|[%][0-9a-fA-F]{2})+$",
"type": "string"
}
},
"type": "object"
},
"protocol": {
"enum": [
"HTTP",
"GRPC"
],
"type": "string"
}
},
"required": [
"backendRef",
"protocol"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "grpc must be specified when protocol is set to 'GRPC'",
"rule": "self.protocol == 'GRPC' ? has(self.grpc) : true"
},
{
"message": "protocol must be 'GRPC' when grpc is set",
"rule": "has(self.grpc) ? self.protocol == 'GRPC' : true"
},
{
"message": "http must be specified when protocol is set to 'HTTP'",
"rule": "self.protocol == 'HTTP' ? has(self.http) : true"
},
{
"message": "protocol must be 'HTTP' when http is set",
"rule": "has(self.http) ? self.protocol == 'HTTP' : true"
}
]
},
"requestHeaderModifier": {
"properties": {
"add": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"remove": {
"items": {
"type": "string"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "set"
},
"set": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
}
},
"type": "object"
},
"requestMirror": {
"properties": {
"backendRef": {
"properties": {
"group": {
"default": "",
"maxLength": 253,
"pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"kind": {
"default": "Service",
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"namespace": {
"maxLength": 63,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
"type": "string"
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
}
},
"required": [
"name"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Must have port for Service reference",
"rule": "(size(self.group) == 0 && self.kind == 'Service') ? has(self.port) : true"
}
]
},
"fraction": {
"properties": {
"denominator": {
"default": 100,
"format": "int32",
"minimum": 1,
"type": "integer"
},
"numerator": {
"format": "int32",
"minimum": 0,
"type": "integer"
}
},
"required": [
"numerator"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "numerator must be less than or equal to denominator",
"rule": "self.numerator <= self.denominator"
}
]
},
"percent": {
"format": "int32",
"maximum": 100,
"minimum": 0,
"type": "integer"
}
},
"required": [
"backendRef"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "Only one of percent or fraction may be specified in HTTPRequestMirrorFilter",
"rule": "!(has(self.percent) && has(self.fraction))"
}
]
},
"requestRedirect": {
"properties": {
"hostname": {
"maxLength": 253,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"path": {
"properties": {
"replaceFullPath": {
"maxLength": 1024,
"type": "string"
},
"replacePrefixMatch": {
"maxLength": 1024,
"type": "string"
},
"type": {
"enum": [
"ReplaceFullPath",
"ReplacePrefixMatch"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "replaceFullPath must be specified when type is set to 'ReplaceFullPath'",
"rule": "self.type == 'ReplaceFullPath' ? has(self.replaceFullPath) : true"
},
{
"message": "type must be 'ReplaceFullPath' when replaceFullPath is set",
"rule": "has(self.replaceFullPath) ? self.type == 'ReplaceFullPath' : true"
},
{
"message": "replacePrefixMatch must be specified when type is set to 'ReplacePrefixMatch'",
"rule": "self.type == 'ReplacePrefixMatch' ? has(self.replacePrefixMatch) : true"
},
{
"message": "type must be 'ReplacePrefixMatch' when replacePrefixMatch is set",
"rule": "has(self.replacePrefixMatch) ? self.type == 'ReplacePrefixMatch' : true"
}
]
},
"port": {
"format": "int32",
"maximum": 65535,
"minimum": 1,
"type": "integer"
},
"scheme": {
"enum": [
"http",
"https"
],
"type": "string"
},
"statusCode": {
"default": 302,
"enum": [
301,
302,
303,
307,
308
],
"type": "integer"
}
},
"type": "object"
},
"responseHeaderModifier": {
"properties": {
"add": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"remove": {
"items": {
"type": "string"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "set"
},
"set": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
}
},
"type": "object"
},
"type": {
"enum": [
"RequestHeaderModifier",
"ResponseHeaderModifier",
"RequestMirror",
"RequestRedirect",
"URLRewrite",
"ExtensionRef",
"CORS"
],
"type": "string"
},
"urlRewrite": {
"properties": {
"hostname": {
"maxLength": 253,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"path": {
"properties": {
"replaceFullPath": {
"maxLength": 1024,
"type": "string"
},
"replacePrefixMatch": {
"maxLength": 1024,
"type": "string"
},
"type": {
"enum": [
"ReplaceFullPath",
"ReplacePrefixMatch"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "replaceFullPath must be specified when type is set to 'ReplaceFullPath'",
"rule": "self.type == 'ReplaceFullPath' ? has(self.replaceFullPath) : true"
},
{
"message": "type must be 'ReplaceFullPath' when replaceFullPath is set",
"rule": "has(self.replaceFullPath) ? self.type == 'ReplaceFullPath' : true"
},
{
"message": "replacePrefixMatch must be specified when type is set to 'ReplacePrefixMatch'",
"rule": "self.type == 'ReplacePrefixMatch' ? has(self.replacePrefixMatch) : true"
},
{
"message": "type must be 'ReplacePrefixMatch' when replacePrefixMatch is set",
"rule": "has(self.replacePrefixMatch) ? self.type == 'ReplacePrefixMatch' : true"
}
]
}
},
"type": "object"
}
},
"required": [
"type"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "filter.cors must be nil if the filter.type is not CORS",
"rule": "!(has(self.cors) && self.type != 'CORS')"
},
{
"message": "filter.cors must be specified for CORS filter.type",
"rule": "!(!has(self.cors) && self.type == 'CORS')"
},
{
"message": "filter.requestHeaderModifier must be nil if the filter.type is not RequestHeaderModifier",
"rule": "!(has(self.requestHeaderModifier) && self.type != 'RequestHeaderModifier')"
},
{
"message": "filter.requestHeaderModifier must be specified for RequestHeaderModifier filter.type",
"rule": "!(!has(self.requestHeaderModifier) && self.type == 'RequestHeaderModifier')"
},
{
"message": "filter.responseHeaderModifier must be nil if the filter.type is not ResponseHeaderModifier",
"rule": "!(has(self.responseHeaderModifier) && self.type != 'ResponseHeaderModifier')"
},
{
"message": "filter.responseHeaderModifier must be specified for ResponseHeaderModifier filter.type",
"rule": "!(!has(self.responseHeaderModifier) && self.type == 'ResponseHeaderModifier')"
},
{
"message": "filter.requestMirror must be nil if the filter.type is not RequestMirror",
"rule": "!(has(self.requestMirror) && self.type != 'RequestMirror')"
},
{
"message": "filter.requestMirror must be specified for RequestMirror filter.type",
"rule": "!(!has(self.requestMirror) && self.type == 'RequestMirror')"
},
{
"message": "filter.requestRedirect must be nil if the filter.type is not RequestRedirect",
"rule": "!(has(self.requestRedirect) && self.type != 'RequestRedirect')"
},
{
"message": "filter.requestRedirect must be specified for RequestRedirect filter.type",
"rule": "!(!has(self.requestRedirect) && self.type == 'RequestRedirect')"
},
{
"message": "filter.urlRewrite must be nil if the filter.type is not URLRewrite",
"rule": "!(has(self.urlRewrite) && self.type != 'URLRewrite')"
},
{
"message": "filter.urlRewrite must be specified for URLRewrite filter.type",
"rule": "!(!has(self.urlRewrite) && self.type == 'URLRewrite')"
},
{
"message": "filter.extensionRef must be nil if the filter.type is not ExtensionRef",
"rule": "!(has(self.extensionRef) && self.type != 'ExtensionRef')"
},
{
"message": "filter.extensionRef must be specified for ExtensionRef filter.type",
"rule": "!(!has(self.extensionRef) && self.type == 'ExtensionRef')"
}
]
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-type": "atomic",
"x-kubernetes-validations": [
{
"message": "May specify either httpRouteFilterRequestRedirect or httpRouteFilterRequestRewrite, but not both",
"rule": "!(self.exists(f, f.type == 'RequestRedirect') && self.exists(f, f.type == 'URLRewrite'))"
},
{
"message": "CORS filter cannot be repeated",
"rule": "self.filter(f, f.type == 'CORS').size() <= 1"
},
{
"message": "RequestHeaderModifier filter cannot be repeated",
"rule": "self.filter(f, f.type == 'RequestHeaderModifier').size() <= 1"
},
{
"message": "ResponseHeaderModifier filter cannot be repeated",
"rule": "self.filter(f, f.type == 'ResponseHeaderModifier').size() <= 1"
},
{
"message": "RequestRedirect filter cannot be repeated",
"rule": "self.filter(f, f.type == 'RequestRedirect').size() <= 1"
},
{
"message": "URLRewrite filter cannot be repeated",
"rule": "self.filter(f, f.type == 'URLRewrite').size() <= 1"
}
]
},
"matches": {
"default": [
{
"path": {
"type": "PathPrefix",
"value": "/"
}
}
],
"items": {
"properties": {
"headers": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"type": {
"default": "Exact",
"enum": [
"Exact",
"RegularExpression"
],
"type": "string"
},
"value": {
"maxLength": 4096,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"method": {
"enum": [
"GET",
"HEAD",
"POST",
"PUT",
"DELETE",
"CONNECT",
"OPTIONS",
"TRACE",
"PATCH"
],
"type": "string"
},
"path": {
"default": {
"type": "PathPrefix",
"value": "/"
},
"properties": {
"type": {
"default": "PathPrefix",
"enum": [
"Exact",
"PathPrefix",
"RegularExpression"
],
"type": "string"
},
"value": {
"default": "/",
"maxLength": 1024,
"type": "string"
}
},
"type": "object",
"x-kubernetes-validations": [
{
"message": "value must be an absolute path and start with '/' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? self.value.startsWith('/') : true"
},
{
"message": "must not contain '//' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.contains('//') : true"
},
{
"message": "must not contain '/./' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.contains('/./') : true"
},
{
"message": "must not contain '/../' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.contains('/../') : true"
},
{
"message": "must not contain '%2f' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.contains('%2f') : true"
},
{
"message": "must not contain '%2F' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.contains('%2F') : true"
},
{
"message": "must not contain '#' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.contains('#') : true"
},
{
"message": "must not end with '/..' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.endsWith('/..') : true"
},
{
"message": "must not end with '/.' when type one of ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? !self.value.endsWith('/.') : true"
},
{
"message": "type must be one of ['Exact', 'PathPrefix', 'RegularExpression']",
"rule": "self.type in ['Exact','PathPrefix'] || self.type == 'RegularExpression'"
},
{
"message": "must only contain valid characters (matching ^(?:[-A-Za-z0-9/._~!$&'()*+,;=:@]|[%][0-9a-fA-F]{2})+$) for types ['Exact', 'PathPrefix']",
"rule": "(self.type in ['Exact','PathPrefix']) ? self.value.matches(r\"\"\"^(?:[-A-Za-z0-9/._~!$&'()*+,;=:@]|[%][0-9a-fA-F]{2})+$\"\"\") : true"
}
]
},
"queryParams": {
"items": {
"properties": {
"name": {
"maxLength": 256,
"minLength": 1,
"pattern": "^[A-Za-z0-9!#$%&'*+\\-.^_\\x60|~]+$",
"type": "string"
},
"type": {
"default": "Exact",
"enum": [
"Exact",
"RegularExpression"
],
"type": "string"
},
"value": {
"maxLength": 1024,
"minLength": 1,
"type": "string"
}
},
"required": [
"name",
"value"
],
"type": "object"
},
"maxItems": 16,
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
}
},
"type": "object"
},
"maxItems": 64,
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"name": {
"maxLength": 253,
"minLength": 1,
"pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
"type": "string"
},
"retry": {
"properties": {
"attempts": {
"type": "integer"
},
"backoff": {
"pattern": "^([0-9]{1,5}(h|m|s|ms)){1,4}$",
"type": "string"
},
"codes": {
"items": {
"maximum": 599,
"minimum": 400,
"type": "integer"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
},
"sessionPersistence": {
"properties": {
"absoluteTimeout": {
"pattern": "^([0-9]{1,5}(h|m|s|ms)){1,4}$",
"type": "string"
},
"cookieConfig": {
"properties": {
"lifetimeType": {
"default": "Session",
"enum": [
"Permanent",
"Session"
],
"type": "string"
}
},
"type": "object"
},
"idleTimeout": {
"pattern": "^([0-9]{1,5}(h|m|s|ms)){1,4}$",
"type": "string"
},
"sessionName": {
"maxLength": 128,
"type": "string"
},
"type": {
"default": "Cookie",
"enum": [
"Cookie",
"Header"
],
"type": "string"
}
},
"type": "object",
"x-kubernetes-validations": [
{
"message": "AbsoluteTimeout must be specified when cookie lifetimeType is Permanent",
"rule": "!has(self.cookieConfig) || !has(self.cookieConfig.lifetimeType) || self.cookieConfig.lifetimeType != 'Permanent' || has(self.absoluteTimeout)"
},
{
"message": "cookieConfig can only be set with type Cookie",
"rule": "!has(self.cookieConfig) || self.type == 'Cookie'"
}
]
},
"timeouts": {
"properties": {
"backendRequest": {
"pattern": "^([0-9]{1,5}(h|m|s|ms)){1,4}$",
"type": "string"
},
"request": {
"pattern": "^([0-9]{1,5}(h|m|s|ms)){1,4}$",
"type": "string"
}
},
"type": "object",
"x-kubernetes-validations": [
{
"message": "backendRequest timeout cannot be longer than request timeout",
"rule": "!(has(self.request) && has(self.backendRequest) && duration(self.request) != duration('0s') && duration(self.backendRequest) > duration(self.request))"
}
]
}
},
"type": "object",
"x-kubernetes-validations": [
{
"message": "RequestRedirect filter must not be used together with backendRefs",
"rule": "(has(self.backendRefs) && size(self.backendRefs) > 0) ? (!has(self.filters) || self.filters.all(f, !has(f.requestRedirect))): true"
},
{
"message": "When using RequestRedirect filter with path.replacePrefixMatch, exactly one PathPrefix match must be specified",
"rule": "(has(self.filters) && self.filters.exists_one(f, has(f.requestRedirect) && has(f.requestRedirect.path) && f.requestRedirect.path.type == 'ReplacePrefixMatch' && has(f.requestRedirect.path.replacePrefixMatch))) ? ((size(self.matches) != 1 || !has(self.matches[0].path) || self.matches[0].path.type != 'PathPrefix') ? false : true) : true"
},
{
"message": "When using URLRewrite filter with path.replacePrefixMatch, exactly one PathPrefix match must be specified",
"rule": "(has(self.filters) && self.filters.exists_one(f, has(f.urlRewrite) && has(f.urlRewrite.path) && f.urlRewrite.path.type == 'ReplacePrefixMatch' && has(f.urlRewrite.path.replacePrefixMatch))) ? ((size(self.matches) != 1 || !has(self.matches[0].path) || self.matches[0].path.type != 'PathPrefix') ? false : true) : true"
},
{
"message": "Within backendRefs, when using RequestRedirect filter with path.replacePrefixMatch, exactly one PathPrefix match must be specified",
"rule": "(has(self.backendRefs) && self.backendRefs.exists_one(b, (has(b.filters) && b.filters.exists_one(f, has(f.requestRedirect) && has(f.requestRedirect.path) && f.requestRedirect.path.type == 'ReplacePrefixMatch' && has(f.requestRedirect.path.replacePrefixMatch))) )) ? ((size(self.matches) != 1 || !has(self.matches[0].path) || self.matches[0].path.type != 'PathPrefix') ? false : true) : true"
},
{
"message": "Within backendRefs, When using URLRewrite filter with path.replacePrefixMatch, exactly one PathPrefix match must be specified",
"rule": "(has(self.backendRefs) && self.backendRefs.exists_one(b, (has(b.filters) && b.filters.exists_one(f, has(f.urlRewrite) && has(f.urlRewrite.path) && f.urlRewrite.path.type == 'ReplacePrefixMatch' && has(f.urlRewrite.path.replacePrefixMatch))) )) ? ((size(self.matches) != 1 || !has(self.matches[0].path) || self.matches[0].path.type != 'PathPrefix') ? false : true) : true"
}
]
},
"maxItems": 16,
"minItems": 1,
"type": "array",
"x-kubernetes-list-type": "atomic",
"x-kubernetes-validations": [
{
"message": "While 16 rules and 64 matches per rule are allowed, the total number of matches across all rules in a route must be less than 128",
"rule": "(self.size() > 0 ? self[0].matches.size() : 0) + (self.size() > 1 ? self[1].matches.size() : 0) + (self.size() > 2 ? self[2].matches.size() : 0) + (self.size() > 3 ? self[3].matches.size() : 0) + (self.size() > 4 ? self[4].matches.size() : 0) + (self.size() > 5 ? self[5].matches.size() : 0) + (self.size() > 6 ? self[6].matches.size() : 0) + (self.size() > 7 ? self[7].matches.size() : 0) + (self.size() > 8 ? self[8].matches.size() : 0) + (self.size() > 9 ? self[9].matches.size() : 0) + (self.size() > 10 ? self[10].matches.size() : 0) + (self.size() > 11 ? self[11].matches.size() : 0) + (self.size() > 12 ? self[12].matches.size() : 0) + (self.size() > 13 ? self[13].matches.size() : 0) + (self.size() > 14 ? self[14].matches.size() : 0) + (self.size() > 15 ? self[15].matches.size() : 0) <= 128"
}
]
},
"useDefaultGateways": {
"enum": [
"All",
"None"
],
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"ingress": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"defaultBackend": {
"properties": {
"resource": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"service": {
"properties": {
"name": {
"type": "string"
},
"port": {
"properties": {
"name": {
"type": "string"
},
"number": {
"format": "int32",
"type": "integer"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"required": [
"name"
],
"type": "object"
}
},
"type": "object"
},
"ingressClassName": {
"type": "string"
},
"rules": {
"items": {
"properties": {
"host": {
"type": "string"
},
"http": {
"properties": {
"paths": {
"items": {
"properties": {
"backend": {
"properties": {
"resource": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"service": {
"properties": {
"name": {
"type": "string"
},
"port": {
"properties": {
"name": {
"type": "string"
},
"number": {
"format": "int32",
"type": "integer"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"required": [
"name"
],
"type": "object"
}
},
"type": "object"
},
"path": {
"type": "string"
},
"pathType": {
"type": "string"
}
},
"required": [
"backend",
"pathType"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"paths"
],
"type": "object"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"tls": {
"items": {
"properties": {
"hosts": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"secretName": {
"type": "string"
}
},
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
}
},
"type": "object"
},
"jsonnet": {
"properties": {
"libraryLabelSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
}
},
"type": "object"
},
"persistentVolumeClaim": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"accessModes": {
"items": {
"type": "string"
},
"type": "array"
},
"dataSource": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"dataSourceRef": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resources": {
"properties": {
"claims": {
"items": {
"properties": {
"name": {
"type": "string"
},
"request": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map"
},
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"selector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"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"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"storageClassName": {
"type": "string"
},
"volumeMode": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"preferences": {
"properties": {
"homeDashboardUid": {
"type": "string"
}
},
"type": "object"
},
"route": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"alternateBackends": {
"items": {
"properties": {
"kind": {
"default": "Service",
"enum": [
"Service",
""
],
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
},
"weight": {
"default": 100,
"format": "int32",
"maximum": 256,
"minimum": 0,
"type": "integer"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"type": "array"
},
"host": {
"type": "string"
},
"path": {
"type": "string"
},
"port": {
"properties": {
"targetPort": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"targetPort"
],
"type": "object"
},
"subdomain": {
"type": "string"
},
"tls": {
"properties": {
"caCertificate": {
"type": "string"
},
"certificate": {
"type": "string"
},
"destinationCACertificate": {
"type": "string"
},
"externalCertificate": {
"properties": {
"name": {
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"insecureEdgeTerminationPolicy": {
"enum": [
"Allow",
"None",
"Redirect",
""
],
"type": "string"
},
"key": {
"type": "string"
},
"termination": {
"enum": [
"edge",
"reencrypt",
"passthrough"
],
"type": "string"
}
},
"required": [
"termination"
],
"type": "object",
"x-kubernetes-validations": [
{
"message": "cannot have both spec.tls.termination: passthrough and spec.tls.insecureEdgeTerminationPolicy: Allow",
"rule": "has(self.termination) && has(self.insecureEdgeTerminationPolicy) ? !((self.termination=='passthrough') && (self.insecureEdgeTerminationPolicy=='Allow')) : true"
}
]
},
"to": {
"properties": {
"kind": {
"default": "Service",
"enum": [
"Service",
""
],
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
},
"weight": {
"default": 100,
"format": "int32",
"maximum": 256,
"minimum": 0,
"type": "integer"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"wildcardPolicy": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"service": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"spec": {
"properties": {
"allocateLoadBalancerNodePorts": {
"type": "boolean"
},
"clusterIP": {
"type": "string"
},
"clusterIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalName": {
"type": "string"
},
"externalTrafficPolicy": {
"type": "string"
},
"healthCheckNodePort": {
"format": "int32",
"type": "integer"
},
"internalTrafficPolicy": {
"type": "string"
},
"ipFamilies": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ipFamilyPolicy": {
"type": "string"
},
"loadBalancerClass": {
"type": "string"
},
"loadBalancerIP": {
"type": "string"
},
"loadBalancerSourceRanges": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ports": {
"items": {
"properties": {
"appProtocol": {
"type": "string"
},
"name": {
"type": "string"
},
"nodePort": {
"format": "int32",
"type": "integer"
},
"port": {
"format": "int32",
"type": "integer"
},
"protocol": {
"default": "TCP",
"type": "string"
},
"targetPort": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"port",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"publishNotReadyAddresses": {
"type": "boolean"
},
"selector": {
"additionalProperties": {
"type": "string"
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"sessionAffinity": {
"type": "string"
},
"sessionAffinityConfig": {
"properties": {
"clientIP": {
"properties": {
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
},
"trafficDistribution": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"serviceAccount": {
"properties": {
"automountServiceAccountToken": {
"type": "boolean"
},
"imagePullSecrets": {
"items": {
"properties": {
"name": {
"default": "",
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"type": "array"
},
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object"
},
"secrets": {
"items": {
"properties": {
"apiVersion": {
"type": "string"
},
"fieldPath": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"resourceVersion": {
"type": "string"
},
"uid": {
"type": "string"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"type": "array"
}
},
"type": "object"
},
"suspend": {
"type": "boolean"
},
"version": {
"type": "string"
}
},
"type": "object"
},
"status": {
"properties": {
"adminUrl": {
"type": "string"
},
"alertRuleGroups": {
"items": {
"type": "string"
},
"type": "array"
},
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"maxLength": 32768,
"type": "string"
},
"observedGeneration": {
"format": "int64",
"minimum": 0,
"type": "integer"
},
"reason": {
"maxLength": 1024,
"minLength": 1,
"pattern": "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$",
"type": "string"
},
"status": {
"enum": [
"True",
"False",
"Unknown"
],
"type": "string"
},
"type": {
"maxLength": 316,
"pattern": "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$",
"type": "string"
}
},
"required": [
"lastTransitionTime",
"message",
"reason",
"status",
"type"
],
"type": "object"
},
"type": "array"
},
"contactPoints": {
"items": {
"type": "string"
},
"type": "array"
},
"dashboards": {
"items": {
"type": "string"
},
"type": "array"
},
"datasources": {
"items": {
"type": "string"
},
"type": "array"
},
"folders": {
"items": {
"type": "string"
},
"type": "array"
},
"lastMessage": {
"type": "string"
},
"libraryPanels": {
"items": {
"type": "string"
},
"type": "array"
},
"manifests": {
"items": {
"type": "string"
},
"type": "array"
},
"muteTimings": {
"items": {
"type": "string"
},
"type": "array"
},
"notificationTemplates": {
"items": {
"type": "string"
},
"type": "array"
},
"serviceaccounts": {
"items": {
"type": "string"
},
"type": "array"
},
"stage": {
"type": "string"
},
"stageStatus": {
"type": "string"
},
"version": {
"type": "string"
}
},
"type": "object"
}
},
"required": [
"spec"
],
"type": "object"
}