648 lines
20 KiB
JSON
648 lines
20 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema",
|
|
"type": "object",
|
|
"required": [
|
|
"proxyAddr",
|
|
"roles",
|
|
"joinParams",
|
|
"kubeClusterName",
|
|
"apps",
|
|
"appResources",
|
|
"awsDatabases",
|
|
"azureDatabases",
|
|
"databases",
|
|
"databaseResources",
|
|
"teleportVersionOverride",
|
|
"insecureSkipProxyTLSVerify",
|
|
"teleportConfig",
|
|
"existingDataVolume",
|
|
"podSecurityPolicy",
|
|
"labels",
|
|
"image",
|
|
"clusterRoleName",
|
|
"clusterRoleBindingName",
|
|
"roleName",
|
|
"roleBindingName",
|
|
"podMonitor",
|
|
"serviceAccountName",
|
|
"secretName",
|
|
"log",
|
|
"affinity",
|
|
"annotations",
|
|
"extraVolumes",
|
|
"extraVolumeMounts",
|
|
"imagePullPolicy",
|
|
"initContainers",
|
|
"resources",
|
|
"tolerations",
|
|
"probeTimeoutSeconds"
|
|
],
|
|
"properties": {
|
|
"authToken": {
|
|
"$id": "#/properties/authToken",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"proxyAddr": {
|
|
"$id": "#/properties/proxyAddr",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"roles": {
|
|
"$id": "#/properties/roles",
|
|
"type": "string",
|
|
"default": "kube"
|
|
},
|
|
"joinParams": {
|
|
"$id": "#/properties/joinParams",
|
|
"type": "object",
|
|
"required": ["method"],
|
|
"properties": {
|
|
"tokenName": {
|
|
"$id": "#/properties/joinParams/tokenName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"method": {
|
|
"$id": "#/properties/joinParams/method",
|
|
"type": "string",
|
|
"default": "token"
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"kubeClusterName": {
|
|
"$id": "#/properties/kubeClusterName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"apps": {
|
|
"$id": "#/properties/apps",
|
|
"type": "array",
|
|
"default": [],
|
|
"required": [
|
|
"name",
|
|
"uri"
|
|
],
|
|
"properties": {
|
|
"name": {
|
|
"$id": "#/properties/apps/name",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"uri": {
|
|
"$id": "#/properties/apps/uri",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"additionalProperties": true
|
|
}
|
|
},
|
|
"appResources": {
|
|
"$id": "#/properties/appResources",
|
|
"type": "array",
|
|
"default": [],
|
|
"required": [
|
|
"labels"
|
|
],
|
|
"properties": {
|
|
"labels": {
|
|
"$id": "#/properties/appResources/labels",
|
|
"type": "object"
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"awsDatabases": {
|
|
"$id": "#/properties/awsDatabases",
|
|
"type": "array",
|
|
"default": [],
|
|
"required": [
|
|
"types",
|
|
"regions",
|
|
"tags"
|
|
],
|
|
"properties": {
|
|
"types": {
|
|
"$id": "#/properties/awsDatabases/types",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"regions": {
|
|
"$id": "#/properties/awsDatabases/regions",
|
|
"type": "string",
|
|
"default": []
|
|
},
|
|
"tags": {
|
|
"$id": "#/properties/awsDatabases/tags",
|
|
"type": "string",
|
|
"default": []
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"azureDatabases": {
|
|
"$id": "#/properties/azureDatabases",
|
|
"type": "array",
|
|
"default": [],
|
|
"items": {
|
|
"type": "object",
|
|
"default": {},
|
|
"required": [
|
|
"types",
|
|
"tags"
|
|
],
|
|
"properties": {
|
|
"types": {
|
|
"$id": "#/properties/azureDatabases/types",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"tags": {
|
|
"$id": "#/properties/azureDatabases/tags",
|
|
"type": "object",
|
|
"default": {},
|
|
"additionalProperties": {
|
|
"oneOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"subscriptions": {
|
|
"$id": "#/properties/azureDatabases/subscriptions",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"regions": {
|
|
"$id": "#/properties/azureDatabases/regions",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"resource_groups": {
|
|
"$id": "#/properties/azureDatabases/resource_groups",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
}
|
|
},
|
|
"databases": {
|
|
"$id": "#/properties/databases",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"databaseResources": {
|
|
"$id": "#/properties/databaseResources",
|
|
"type": "array",
|
|
"default": [],
|
|
"required": [
|
|
"labels"
|
|
],
|
|
"properties": {
|
|
"labels": {
|
|
"$id": "#/properties/databaseResources/labels",
|
|
"type": "object"
|
|
},
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"teleportVersionOverride": {
|
|
"$id": "#/properties/teleportVersionOverride",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"caPin": {
|
|
"$id": "#/properties/caPin",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"insecureSkipProxyTLSVerify": {
|
|
"$id": "#/properties/insecureSkipProxyTLSVerify",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"teleportConfig": {
|
|
"$id": "#/properties/teleportConfig",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"tls": {
|
|
"$id": "#/properties/tls",
|
|
"type": "object",
|
|
"required": [
|
|
"existingCASecretName"
|
|
],
|
|
"properties": {
|
|
"existingCASecretName": {
|
|
"$id": "#/properties/tls/properties/existingCASecretName",
|
|
"type": "string",
|
|
"default": ""
|
|
}
|
|
}
|
|
},
|
|
"existingDataVolume": {
|
|
"$id": "#/properties/existingDataVolume",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"podSecurityPolicy": {
|
|
"$id": "#/properties/podSecurityPolicy",
|
|
"type": "object",
|
|
"required": [
|
|
"enabled"
|
|
],
|
|
"properties": {
|
|
"enabled": {
|
|
"$id": "#/properties/podSecurityPolicy/properties/enabled",
|
|
"type": "boolean",
|
|
"default": true
|
|
}
|
|
}
|
|
},
|
|
"labels": {
|
|
"$id": "#/properties/labels",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"image": {
|
|
"$id": "#/properties/image",
|
|
"type": "string",
|
|
"default": "public.ecr.aws/gravitational/teleport-distroless"
|
|
},
|
|
"enterpriseImage": {
|
|
"$id": "#/properties/enterpriseImage",
|
|
"type": "string",
|
|
"default": "public.ecr.aws/gravitational/teleport-ent-distroless"
|
|
},
|
|
"imagePullSecrets": {
|
|
"$id": "#/properties/imagePullSecrets",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"replicaCount": {
|
|
"$id": "#/properties/replicaCount",
|
|
"type": "integer",
|
|
"default": 1
|
|
},
|
|
"clusterRoleName": {
|
|
"$id": "#/properties/clusterRoleName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"clusterRoleBindingName": {
|
|
"$id": "#/properties/clusterRoleBindingName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"roleName": {
|
|
"$id": "#/properties/roleName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"roleBindingName": {
|
|
"$id": "#/properties/roleBindingName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"highAvailability": {
|
|
"$id": "#/properties/highAvailability",
|
|
"type": "object",
|
|
"required": [
|
|
"podDisruptionBudget",
|
|
"replicaCount",
|
|
"requireAntiAffinity"
|
|
],
|
|
"properties": {
|
|
"podDisruptionBudget": {
|
|
"$id": "#/properties/highAvailability/properties/podDisruptionBudget",
|
|
"type": "object",
|
|
"required": [
|
|
"enabled",
|
|
"minAvailable"
|
|
],
|
|
"properties": {
|
|
"enabled": {
|
|
"$id": "#/properties/highAvailability/properties/podDisruptionBudget/properties/enabled",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"minAvailable": {
|
|
"$id": "#/properties/highAvailability/properties/podDisruptionBudget/properties/minAvailable",
|
|
"type": "integer",
|
|
"default": 1
|
|
}
|
|
}
|
|
},
|
|
"replicaCount": {
|
|
"$id": "#/properties/highAvailability/properties/replicaCount",
|
|
"type": "integer",
|
|
"default": 1
|
|
},
|
|
"requireAntiAffinity": {
|
|
"$id": "#/properties/highAvailability/properties/requireAntiAffinity",
|
|
"type": "boolean",
|
|
"default": false
|
|
}
|
|
}
|
|
},
|
|
"podMonitor": {
|
|
"$id": "#/properties/podMonitor",
|
|
"type": "object",
|
|
"required": ["enabled"],
|
|
"properties": {
|
|
"enabled": {
|
|
"$id": "#/properties/podMonitor/enabled",
|
|
"type": "boolean",
|
|
"default": false
|
|
},
|
|
"additionalLabels": {
|
|
"$id": "#/properties/podMonitor/additionalLabels",
|
|
"type": "object",
|
|
"default": {"prometheus": "default"},
|
|
"additionalProperties": {"type": "string"}
|
|
},
|
|
"interval": {
|
|
"$id": "#/properties/podMonitor/interval",
|
|
"type": "string",
|
|
"default": "30s"
|
|
}
|
|
}
|
|
},
|
|
"priorityClassName": {
|
|
"$id": "#/properties/priorityClassName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"serviceAccountName": {
|
|
"$id": "#/properties/serviceAccountName",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"secretName": {
|
|
"$id": "#/properties/secretName",
|
|
"type": "string",
|
|
"default": "teleport-kube-agent-join-token"
|
|
},
|
|
"log": {
|
|
"$id": "#/properties/log",
|
|
"type": "object",
|
|
"required": [
|
|
"output",
|
|
"format",
|
|
"extraFields"
|
|
],
|
|
"properties": {
|
|
"level": {
|
|
"$id": "#/properties/log/properties/level",
|
|
"type": "string",
|
|
"enum": [
|
|
"DEBUG",
|
|
"INFO",
|
|
"WARN",
|
|
"WARNING",
|
|
"ERROR"
|
|
],
|
|
"default": "INFO"
|
|
},
|
|
"deployment": {
|
|
"$id": "#/properties/log/properties/output",
|
|
"type": "string",
|
|
"default": {}
|
|
},
|
|
"pod": {
|
|
"$id": "#/properties/log/properties/format",
|
|
"type": "string",
|
|
"default": {}
|
|
},
|
|
"service": {
|
|
"$id": "#/properties/log/properties/extraFields",
|
|
"type": "array",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"affinity": {
|
|
"$id": "#/properties/affinity",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"dnsConfig": {
|
|
"$id": "#/properties/dnsConfig",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"dnsPolicy": {
|
|
"$id": "#/properties/dnsPolicy",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"extraLabels": {
|
|
"$id": "#/properties/extraLabels",
|
|
"type": "object",
|
|
"properties": {
|
|
"clusterRole": {
|
|
"$id": "#/properties/extraLabels/properties/clusterRole",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"clusterRoleBinding": {
|
|
"$id": "#/properties/extraLabels/properties/clusterRoleBinding",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"role": {
|
|
"$id": "#/properties/extraLabels/properties/role",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"roleBinding": {
|
|
"$id": "#/properties/extraLabels/properties/roleBinding",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"config": {
|
|
"$id": "#/properties/extraLabels/properties/config",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"deployment": {
|
|
"$id": "#/properties/extraLabels/properties/deployment",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"pod": {
|
|
"$id": "#/properties/extraLabels/properties/pod",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"podDisruptionBudget": {
|
|
"$id": "#/properties/extraLabels/properties/podDisruptionBudget",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"podSecurityPolicy": {
|
|
"$id": "#/properties/extraLabels/properties/podSecurityPolicy",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"secret": {
|
|
"$id": "#/properties/extraLabels/properties/secret",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"serviceAccount": {
|
|
"$id": "#/properties/extraLabels/properties/serviceAccount",
|
|
"type": "object",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"annotations": {
|
|
"$id": "#/properties/annotations",
|
|
"type": "object",
|
|
"required": [
|
|
"config",
|
|
"deployment",
|
|
"pod",
|
|
"secret",
|
|
"serviceAccount"
|
|
],
|
|
"properties": {
|
|
"config": {
|
|
"$id": "#/properties/annotations/properties/config",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"deployment": {
|
|
"$id": "#/properties/annotations/properties/deployment",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"pod": {
|
|
"$id": "#/properties/annotations/properties/pod",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"secret": {
|
|
"$id": "#/properties/annotations/properties/secret",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"serviceAccount": {
|
|
"$id": "#/properties/annotations/properties/serviceAccount",
|
|
"type": "object",
|
|
"default": {}
|
|
}
|
|
}
|
|
},
|
|
"serviceAccount": {
|
|
"$id": "#/properties/serviceAccount",
|
|
"type": "object",
|
|
"required": [],
|
|
"properties": {
|
|
"name": {
|
|
"$id": "#properties/serviceAccount/name",
|
|
"type": "string",
|
|
"default": ""
|
|
},
|
|
"create": {
|
|
"$id": "#properties/serviceAccount/create",
|
|
"type": "boolean",
|
|
"default": true
|
|
}
|
|
}
|
|
},
|
|
"rbac": {
|
|
"$id": "#/properties/rbac",
|
|
"type": "object",
|
|
"required": [],
|
|
"properties": {
|
|
"create": {
|
|
"$id": "#properties/rbac/create",
|
|
"type": "boolean",
|
|
"default": true
|
|
}
|
|
}
|
|
},
|
|
"extraArgs": {
|
|
"$id": "#/properties/extraArgs",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"extraEnv": {
|
|
"$id": "#/properties/extraEnv",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"extraVolumes": {
|
|
"$id": "#/properties/extraVolumes",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"extraVolumeMounts": {
|
|
"$id": "#/properties/extraVolumeMounts",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"hostAliases": {
|
|
"$id": "#/properties/hostAliases",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"imagePullPolicy": {
|
|
"$id": "#/properties/imagePullPolicy",
|
|
"type": "string",
|
|
"enum": [
|
|
"Never",
|
|
"IfNotPresent",
|
|
"Always"
|
|
],
|
|
"default": "IfNotPresent"
|
|
},
|
|
"initContainers": {
|
|
"$id": "#/properties/initContainers",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"resources": {
|
|
"$id": "#/properties/resources",
|
|
"type": "object",
|
|
"default": {}
|
|
},
|
|
"tolerations": {
|
|
"$id": "#/properties/tolerations",
|
|
"type": "array",
|
|
"default": []
|
|
},
|
|
"probeTimeoutSeconds": {
|
|
"$id": "#/properties/probeTimeoutSeconds",
|
|
"type": "integer",
|
|
"default": 1
|
|
}
|
|
}
|
|
}
|