104 lines
3.5 KiB
JSON
104 lines
3.5 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"global": {"type": "object"},
|
|
"replicaCount": {"type": "integer", "minimum": 1},
|
|
"nameOverride": {"type": "string"},
|
|
"fullnameOverride": {"type": "string"},
|
|
"image": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["repository", "tag", "pullPolicy"],
|
|
"properties": {
|
|
"repository": {"type": "string", "minLength": 1},
|
|
"tag": {"type": "string"},
|
|
"pullPolicy": {"enum": ["Always", "IfNotPresent", "Never"]}
|
|
}
|
|
},
|
|
"imagePullSecrets": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["name"],
|
|
"properties": {"name": {"type": "string", "minLength": 1}}
|
|
}
|
|
},
|
|
"target": {"type": "string", "minLength": 1},
|
|
"publicUrl": {"type": "string"},
|
|
"redirectDomains": {"type": "string"},
|
|
"cookieDomain": {"type": "string"},
|
|
"cookieExpirationTime": {"type": "string", "minLength": 1},
|
|
"serveRobotsTxt": {"type": "boolean"},
|
|
"signingSecret": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["name", "key"],
|
|
"properties": {
|
|
"name": {"type": "string", "minLength": 1},
|
|
"key": {"type": "string", "minLength": 1}
|
|
}
|
|
},
|
|
"policy": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["create", "existingConfigMap", "content"],
|
|
"properties": {
|
|
"create": {"type": "boolean"},
|
|
"existingConfigMap": {"type": "string"},
|
|
"content": {"type": "string"}
|
|
}
|
|
},
|
|
"podAnnotations": {"type": "object", "additionalProperties": {"type": "string"}},
|
|
"resources": {"type": "object"},
|
|
"service": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["annotations"],
|
|
"properties": {"annotations": {"type": "object", "additionalProperties": {"type": "string"}}}
|
|
},
|
|
"traefik": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["middleware", "ingressRoute"],
|
|
"properties": {
|
|
"middleware": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["enabled", "nameOverride", "trustForwardHeader", "maxResponseBodySize"],
|
|
"properties": {
|
|
"enabled": {"type": "boolean"},
|
|
"nameOverride": {"type": "string"},
|
|
"trustForwardHeader": {"type": "boolean"},
|
|
"maxResponseBodySize": {"type": "integer", "minimum": 0}
|
|
}
|
|
},
|
|
"ingressRoute": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["enabled", "nameOverride", "entryPoints", "routes"],
|
|
"properties": {
|
|
"enabled": {"type": "boolean"},
|
|
"nameOverride": {"type": "string"},
|
|
"entryPoints": {"type": "array", "items": {"type": "string", "minLength": 1}},
|
|
"routes": {"type": "array", "items": {"type": "object"}}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"serviceMonitor": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["enabled", "labels", "interval"],
|
|
"properties": {
|
|
"enabled": {"type": "boolean"},
|
|
"labels": {"type": "object", "additionalProperties": {"type": "string"}},
|
|
"interval": {"type": "string", "minLength": 1}
|
|
}
|
|
}
|
|
},
|
|
"required": ["replicaCount", "image", "target", "signingSecret", "policy", "service", "traefik", "serviceMonitor"]
|
|
}
|