c17bbda89b
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.
8749 lines
417 KiB
JSON
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"
|
|
}
|