90 lines
3.7 KiB
JSON
90 lines
3.7 KiB
JSON
{
|
|
"description": "TLSStore is the CRD implementation of a Traefik TLS Store.\nFor the time being, only the TLSStore named default is supported.\nThis means that you cannot have two stores that are named default in different Kubernetes namespaces.\nMore info: https://doc.traefik.io/traefik/v3.6/reference/routing-configuration/http/tls/tls-certificates/#certificates-stores#certificates-stores",
|
|
"properties": {
|
|
"apiVersion": {
|
|
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"spec": {
|
|
"description": "TLSStoreSpec defines the desired state of a TLSStore.",
|
|
"properties": {
|
|
"certificates": {
|
|
"description": "Certificates is a list of secret names, each secret holding a key/certificate pair to add to the store.",
|
|
"items": {
|
|
"description": "Certificate holds a secret name for the TLSStore resource.",
|
|
"properties": {
|
|
"secretName": {
|
|
"description": "SecretName is the name of the referenced Kubernetes Secret to specify the certificate details.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"secretName"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"type": "array"
|
|
},
|
|
"defaultCertificate": {
|
|
"description": "DefaultCertificate defines the default certificate configuration.",
|
|
"properties": {
|
|
"secretName": {
|
|
"description": "SecretName is the name of the referenced Kubernetes Secret to specify the certificate details.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"secretName"
|
|
],
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"defaultGeneratedCert": {
|
|
"description": "DefaultGeneratedCert defines the default generated certificate configuration.",
|
|
"properties": {
|
|
"domain": {
|
|
"description": "Domain is the domain definition for the DefaultCertificate.",
|
|
"properties": {
|
|
"main": {
|
|
"description": "Main defines the main domain name.",
|
|
"type": "string"
|
|
},
|
|
"sans": {
|
|
"description": "SANs defines the subject alternative domain names.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
},
|
|
"resolver": {
|
|
"description": "Resolver is the name of the resolver that will be used to issue the DefaultCertificate.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"type": "object",
|
|
"additionalProperties": false
|
|
}
|
|
},
|
|
"required": [
|
|
"metadata",
|
|
"spec"
|
|
],
|
|
"type": "object"
|
|
}
|