2022-08-05 16:52:35 +00:00
{
"$schema" : "http://json-schema.org/draft-07/schema" ,
"$id" : "http://example.com/example.json" ,
"title" : "HPE CSI Driver for Kubernetes Helm Chart JSON Schema" ,
"type" : "object" ,
"default" :
{
"disable" : {
"nimble" : false ,
"primera" : false ,
"alletra6000" : false ,
"alletra9000" : false
} ,
"disableNodeConformance" : false ,
"imagePullPolicy" : "IfNotPresent" ,
"iscsi" : {
"chapUser" : "" ,
"chapPassword" : ""
} ,
"logLevel" : "info" ,
"registry" : "quay.io" ,
"kubeletRootDir" : "/var/lib/kubelet/" ,
"disableNodeGetVolumeStats" : false ,
"csp" : {
"nodeSelector" : { } ,
"tolerations" : [ ] ,
"affinity" : { } ,
"labels" : { }
} ,
"controller" : {
"nodeSelector" : { } ,
"tolerations" : [ ] ,
"affinity" : { } ,
"labels" : { }
} ,
"node" : {
"nodeSelector" : { } ,
"tolerations" : [ ] ,
"affinity" : { } ,
"labels" : { }
}
} ,
"required" : [
"disable" ,
"disableNodeConformance" ,
"imagePullPolicy" ,
"iscsi" ,
"logLevel" ,
"registry" ,
"kubeletRootDir" ,
"disableNodeGetVolumeStats" ,
"csp" ,
"controller" ,
"node"
] ,
"properties" : {
"disable" : {
"$id" : "#/properties/disable" ,
"title" : "CSP Deployment and Service backend exclusion" ,
"description" : "All backend Deployments and Services are installed by default." ,
"type" : "object" ,
"default" :
{
"nimble" : false ,
"primera" : false ,
"alletra6000" : false ,
"alletra9000" : false
} ,
"required" : [
"nimble" ,
"primera" ,
"alletra6000" ,
"alletra9000"
] ,
"properties" : {
"nimble" : {
"$id" : "#/properties/disable/properties/nimble" ,
"title" : "HPE Nimble Storage" ,
"type" : "boolean" ,
"default" : false
} ,
"primera" : {
"$id" : "#/properties/disable/properties/primera" ,
"title" : "HPE Primera" ,
"type" : "boolean" ,
"default" : false
} ,
"alletra6000" : {
"$id" : "#/properties/disable/properties/alletra6000" ,
2023-03-10 23:07:57 +00:00
"title" : "HPE Alletra 5000/6000" ,
2022-08-05 16:52:35 +00:00
"type" : "boolean" ,
"default" : false
} ,
"alletra9000" : {
"$id" : "#/properties/disable/properties/alletra9000" ,
"title" : "HPE Alletra 9000" ,
"type" : "boolean" ,
"default" : false
}
} ,
"additionalProperties" : false
} ,
"disableNodeConformance" : {
"$id" : "#/properties/disableNodeConformance" ,
"title" : "Disable node conformance" ,
"description" : "Disabling node conformance forces the cluster administrator to install required packages and ensure the correct node services are started to use external block storage." ,
"type" : "boolean" ,
"default" : false
} ,
"imagePullPolicy" : {
"$id" : "#/properties/imagePullPolicy" ,
"title" : "CSI driver image pull policy" ,
"type" : "string" ,
"default" : "IfNotPresent" ,
"enum" : [ "Always" , "IfNotPresent" , "Never" ]
} ,
"iscsi" : {
"$id" : "#/properties/iscsi" ,
"title" : "iSCSI CHAP credentials" ,
"type" : "object" ,
"default" :
{
"chapUser" : "" ,
"chapPassword" : ""
} ,
"required" : [
"chapUser" ,
"chapPassword"
] ,
"properties" : {
"chapUser" : {
"$id" : "#/properties/iscsi/properties/chapUser" ,
"title" : "CHAP username" ,
"type" : "string" ,
"default" : ""
} ,
"chapPassword" : {
"$id" : "#/properties/iscsi/properties/chapPassword" ,
"title" : "CHAP password" ,
"description" : "Between 12 and 16 characters" ,
"type" : "string" ,
"default" : "" ,
"pattern" : "^$|^[a-zA-Z0-9+_)(*^%$#@!]{12,16}$"
}
} ,
"additionalProperties" : false
} ,
"logLevel" : {
"$id" : "#/properties/logLevel" ,
"title" : "Set the log level of the HPE CSI Driver images" ,
"type" : "string" ,
"default" : "info" ,
"enum" : [ "info" , "debug" , "trace" , "warn" , "error" ]
} ,
"registry" : {
"$id" : "#/properties/registry" ,
"title" : "Pull images from a different registry than default" ,
"description" : "SIG Storage images needs to be mirrored from k8s.gcr.io to this registry if this parameter is changed." ,
"type" : "string" ,
"default" : "quay.io"
} ,
"kubeletRootDir" : {
"$id" : "#/properties/kubeletRootDir" ,
"title" : "Kubelet root directory" ,
"description" : "Only change this if the kubelet root dir has been altered by the Kubernetes platform installer." ,
"type" : "string" ,
"default" : "/var/lib/kubelet" ,
"pattern" : "^/"
} ,
"disableNodeGetVolumeStats" : {
"$id" : "#/properties/disableNodeGetVolumeStats" ,
"title" : "Disable the CSI nodeGetVolumeStats call" ,
"description" : "In very large environments, disabling this feature may alleviate pressure on the CSP." ,
"type" : "boolean" ,
"default" : false
} ,
"csp" : {
"nodeSelector" : {
"$id" : "#/properties/csp/properties/nodeSelector" ,
"title" : "Node selector to control the selection of nodes (optional)." ,
"description" : "Selector which must match a node's labels for the pod to be scheduled on that node." ,
"type" : "object" ,
"default" : { }
} ,
"tolerations" : {
"$id" : "#/properties/csp/properties/tolerations" ,
"title" : "Set tolerations for the csp pods(optional)." ,
"description" : "Tolerations is the list of tolerations for the csp pods." ,
"type" : "array" ,
"default" : [ ]
} ,
"affinity" : {
"$id" : "#/properties/csp/properties/affinity" ,
"title" : "Node affinity for csp plugin (optional)." ,
"description" : "Describes node affinity scheduling rules for the pod." ,
"type" : "object" ,
"default" : { }
} ,
"labels" : {
"$id" : "#/properties/csp/properties/labels" ,
"title" : "labels" ,
"description" : "labels." ,
"type" : "object" ,
"default" : { }
}
} ,
"controller" : {
"nodeSelector" : {
"$id" : "#/properties/controller/properties/nodeSelector" ,
"title" : "Node selector to control the selection of nodes (optional)." ,
"description" : "Selector which must match a node's labels for the pod to be scheduled on that node." ,
"type" : "object" ,
"default" : { }
} ,
"tolerations" : {
"$id" : "#/properties/controller/properties/tolerations" ,
"title" : "Set tolerations for the driver pods(optional)" ,
"description" : "Tolerations is the list of tolerations for the driver pods." ,
"type" : "array" ,
"default" : [ ]
} ,
"affinity" : {
"$id" : "#/properties/controller/properties/affinity" ,
"title" : "Node affinity for controller plugin (optional)." ,
"description" : "Describes node affinity scheduling rules for the pod." ,
"type" : "object" ,
"default" : { }
} ,
"labels" : {
"$id" : "#/properties/controller/properties/labels" ,
"title" : "labels" ,
"description" : "labels." ,
"type" : "object" ,
"default" : { }
}
} ,
"node" : {
"nodeSelector" : {
"$id" : "#/properties/node/properties/nodeSelector" ,
"title" : "Node selector to control the selection of nodes (optional)." ,
"description" : "Selector which must match a node's labels for the pod to be scheduled on that node." ,
"type" : "object" ,
"default" : { }
} ,
"tolerations" : {
"$id" : "#/properties/node/properties/tolerations" ,
"title" : "Set tolerations for the node pods(optional)." ,
"description" : "Tolerations is the list of tolerations for the node pods." ,
"type" : "array" ,
"default" : [ ]
} ,
"affinity" : {
"$id" : "#/properties/node/properties/affinity" ,
"title" : "Node affinity for node plugin (optional)." ,
"description" : "Describes node affinity scheduling rules for the pod." ,
"type" : "object" ,
"default" : { }
} ,
"labels" : {
"$id" : "#/properties/node/properties/labels" ,
"title" : "labels" ,
"description" : "labels." ,
"type" : "object" ,
"default" : { }
}
} ,
"global" : { }
} ,
"additionalProperties" : false
}