541 lines
12 KiB
JSON
541 lines
12 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"type": "object",
|
|
"properties": {
|
|
"nameOverride": {
|
|
"type": "string"
|
|
},
|
|
"fullnameOverride": {
|
|
"type": "string"
|
|
},
|
|
"commonLabels": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"commonAnnotations": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"crds": {
|
|
"type": "object",
|
|
"properties": {
|
|
"skipVersionCheck": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"imagePullSecrets": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"additionalProperties": true
|
|
}
|
|
},
|
|
"operator": {
|
|
"type": "object",
|
|
"properties": {
|
|
"replicaCount": {
|
|
"type": "integer",
|
|
"minimum": 0
|
|
},
|
|
"updateStrategy": {
|
|
"$ref": "#/definitions/UpdateStrategy"
|
|
},
|
|
"image": {
|
|
"$ref": "#/definitions/Image"
|
|
},
|
|
"podAnnotations": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"podLabels": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"serviceAnnotations": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"serviceLabels": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"resources": {
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"tolerations": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"affinity": {
|
|
"type": "object"
|
|
},
|
|
"config": {
|
|
"type": "object",
|
|
"properties": {
|
|
"logLevel": {
|
|
"type": "string",
|
|
"enum": [
|
|
"debug",
|
|
"info",
|
|
"warn",
|
|
"error"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"logLevel"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"serviceAccount": {
|
|
"type": "object",
|
|
"properties": {
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"annotations": {
|
|
"$ref": "#/definitions/StringMap"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"annotations",
|
|
"create",
|
|
"name"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"watchNamespaces": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"watchNamespaceSelector": {
|
|
"$ref": "#/definitions/LabelSelector"
|
|
},
|
|
"rbac": {
|
|
"type": "object",
|
|
"properties": {
|
|
"create": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"create"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"serviceMonitor": {
|
|
"type": "object",
|
|
"properties": {
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"labels": {
|
|
"$ref": "#/definitions/StringMap"
|
|
}
|
|
},
|
|
"required": [
|
|
"create"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"oneOf": [
|
|
{
|
|
"properties": {
|
|
"watchNamespaces": {
|
|
"minItems": 1
|
|
},
|
|
"watchNamespaceSelector": {
|
|
"additionalProperties": false
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"properties": {
|
|
"watchNamespaces": {
|
|
"maxItems": 0
|
|
},
|
|
"watchNamespaceSelector": {
|
|
"$ref": "#/definitions/LabelSelector"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"required": [
|
|
"affinity",
|
|
"config",
|
|
"image",
|
|
"updateStrategy",
|
|
"nodeSelector",
|
|
"podAnnotations",
|
|
"podLabels",
|
|
"rbac",
|
|
"replicaCount",
|
|
"resources",
|
|
"serviceAccount",
|
|
"serviceAnnotations",
|
|
"serviceLabels",
|
|
"serviceMonitor",
|
|
"tolerations"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"engine": {
|
|
"type": "object",
|
|
"properties": {
|
|
"image": {
|
|
"$ref": "#/definitions/Image"
|
|
},
|
|
"resources": {
|
|
"type": "object"
|
|
},
|
|
"sidecar": {
|
|
"type": "object",
|
|
"properties":{
|
|
"podMonitor": {
|
|
"type": "object",
|
|
"properties": {
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"labels": {
|
|
"$ref": "#/definitions/StringMap"
|
|
}
|
|
},
|
|
"required": [
|
|
"create"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"podMonitor"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"image",
|
|
"resources",
|
|
"sidecar"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"networkValidator": {
|
|
"type": "object",
|
|
"properties": {
|
|
"image": {
|
|
"$ref": "#/definitions/Image"
|
|
}
|
|
},
|
|
"required": [
|
|
"image"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"sessionAgent": {
|
|
"type": "object",
|
|
"properties": {
|
|
"image": {
|
|
"$ref": "#/definitions/Image"
|
|
},
|
|
"resources": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"image",
|
|
"resources"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"license": {
|
|
"type": "object",
|
|
"properties": {
|
|
"secretName": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
}
|
|
},
|
|
"required": [
|
|
"secretName"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"dashboards": {
|
|
"type": "object",
|
|
"properties" : {
|
|
"create": {
|
|
"type": "boolean"
|
|
},
|
|
"config": {
|
|
"type": "object",
|
|
"properties": {
|
|
"grafana": {
|
|
"type": "object",
|
|
"properties": {
|
|
"folderAnnotation": {
|
|
"$ref": "#/definitions/NameValuePair"
|
|
},
|
|
"dashboardLabel": {
|
|
"$ref": "#/definitions/NameValuePair"
|
|
}
|
|
},
|
|
"required": [
|
|
"folderAnnotation",
|
|
"dashboardLabel"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"grafana"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"instances": {
|
|
"type": "object",
|
|
"properties": {
|
|
"overview": {
|
|
"$ref": "#/definitions/DashboardInstance"
|
|
},
|
|
"license" : {
|
|
"$ref": "#/definitions/DashboardInstance"
|
|
},
|
|
"blockMetrics" : {
|
|
"$ref": "#/definitions/DashboardInstance"
|
|
},
|
|
"blockLogs" : {
|
|
"$ref": "#/definitions/DashboardInstance"
|
|
}
|
|
},
|
|
"required": [
|
|
"overview",
|
|
"license",
|
|
"blockMetrics",
|
|
"blockLogs"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"create",
|
|
"config",
|
|
"instances"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"tests": {
|
|
"type": "object",
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"enabled"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"global": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"commonAnnotations",
|
|
"commonLabels",
|
|
"crds",
|
|
"engine",
|
|
"fullnameOverride",
|
|
"imagePullSecrets",
|
|
"license",
|
|
"nameOverride",
|
|
"operator",
|
|
"networkValidator",
|
|
"sessionAgent",
|
|
"dashboards",
|
|
"tests"
|
|
],
|
|
"additionalProperties": false,
|
|
"definitions": {
|
|
"StringMap": {
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"Image": {
|
|
"type": "object",
|
|
"properties": {
|
|
"repository": {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"tag": {
|
|
"type": "string"
|
|
},
|
|
"digest": {
|
|
"type": "string",
|
|
"pattern": "^$|^sha256:[a-f0-9]{64}$"
|
|
},
|
|
"pullPolicy": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Always",
|
|
"IfNotPresent",
|
|
"Never"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"digest",
|
|
"pullPolicy",
|
|
"repository",
|
|
"tag"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"LabelSelector": {
|
|
"type": "object",
|
|
"properties": {
|
|
"matchExpressions": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": [
|
|
"key",
|
|
"operator"
|
|
],
|
|
"properties": {
|
|
"key": {
|
|
"type": "string"
|
|
},
|
|
"operator": {
|
|
"type": "string"
|
|
},
|
|
"values": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"matchLabels": {
|
|
"$ref": "#/definitions/StringMap"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
},
|
|
"UpdateStrategy": {
|
|
"type": "object",
|
|
"oneOf" : [
|
|
{
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/definitions/RecreateType"
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
{
|
|
"properties": {
|
|
"type": {
|
|
"$ref": "#/definitions/RollingUpdateType"
|
|
},
|
|
"rollingUpdate": {
|
|
"$ref": "#/definitions/RollingUpdate"
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
]
|
|
},
|
|
"RecreateType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Recreate"
|
|
]
|
|
},
|
|
"RollingUpdateType": {
|
|
"type": "string",
|
|
"enum": [
|
|
"RollingUpdate"
|
|
]
|
|
},
|
|
"RollingUpdate": {
|
|
"type": "object",
|
|
"properties": {
|
|
"maxSurge": {
|
|
"type": ["integer", "string"],
|
|
"minimum": 0,
|
|
"pattern": "^\\d+%?$"
|
|
},
|
|
"maxUnavailable": {
|
|
"type": ["integer", "string"],
|
|
"minimum": 0,
|
|
"pattern": "^\\d+%?$"
|
|
}
|
|
},
|
|
"anyOf": [
|
|
{"required": ["maxSurge"]},
|
|
{"required": ["maxUnavailable"]}
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"DashboardInstance" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"create" : {
|
|
"type" : "boolean"
|
|
}
|
|
},
|
|
"required" : [
|
|
"create"
|
|
],
|
|
"additionalProperties": false
|
|
},
|
|
"NameValuePair" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"name" : {
|
|
"type": "string",
|
|
"minLength": 1
|
|
},
|
|
"value" : {
|
|
"type" : "string",
|
|
"minLength": 1
|
|
}
|
|
},
|
|
"required" : [
|
|
"name",
|
|
"value"
|
|
],
|
|
"additionalProperties": false
|
|
}
|
|
}
|
|
}
|