rancher-partner-charts/charts/hpe/hpe-array-exporter/values.schema.json

191 lines
7.7 KiB
JSON
Raw Normal View History

{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "http://example.com/example.json",
"title": "HPE Storage Array Exporter for Prometheus Helm Chart JSON Schema",
"type": "object",
"default":
{
"acceptEula": false,
"image": {
"registry": "quay.io",
"pullPolicy": "IfNotPresent"
},
"logLevel": "info",
"service": {
"type": "ClusterIP",
"port": "9090"
}
},
"required": [
"acceptEula",
"arraySecret",
"image",
"logLevel",
"metrics",
"service"
],
"properties": {
"acceptEula": {
"$id": "#/properties/acceptEula",
"title": "Accept the HPE End User License Agreement",
"description": "Confirm your acceptance of the HPE End User License Agreement at https://www.hpe.com/us/en/software/licensing.html by setting this value to true.",
"type": "boolean",
"default": false
},
"arraySecret": {
"$id": "#/properties/arraySecret",
"title": "Storage array access Secret",
"description": "The name of a Secret in the same namespace as the Helm chart installation providing storage array access information: \"address\" (or \"backend\"), \"username\", and \"password\".",
"type": "string",
"pattern": "[a-z0-9]([-a-z0-9]*[a-z0-9])?",
"minLength": 1,
"maxLength": 63
},
"image": {
"$id": "#/properties/image",
"title": "Container image configuration",
"type": "object",
"default": {
"registry": "quay.io",
"pullPolicy": "IfNotPresent"
},
"required": [
"registry",
"pullPolicy"
],
"properties": {
"registry": {
"$id": "#/properties/image/properties/registry",
"title": "Container image registry",
"description": "The registry from which to pull container images.",
"type": "string",
"default": "quay.io"
},
"pullPolicy": {
"$id": "#/properties/image/properties/pullPolicy",
"title": "Container image pull policy",
"type": "string",
"default": "IfNotPresent",
"enum": [ "Always", "IfNotPresent", "Never" ]
}
},
"additionalProperties": false
},
"logLevel": {
"$id": "#/properties/logLevel",
"title": "Logging level",
"description": "Minimum severity of messages to output.",
"type": "string",
"default": "info",
"enum": [ "info", "debug", "trace", "warn", "error" ]
},
"metrics": {
"$id": "#/properties/metrics",
"title": "Metrics customization",
"description": "Customization of the metrics provided.",
"type": "object",
"default": {
"disableIntrospection": false
},
"required": [
"disableIntrospection"
],
"properties": {
"disableIntrospection": {
"$id": "#/properties/metrics/properties/disableIntrospection",
"title": "Disable introspection metrics",
"description": "Exclude metrics about the metrics provider itself, with prefixes such as \"promhttp\", \"process\", and \"go\".",
"type": "boolean",
"default": false
}
},
"additionalProperties": false
},
"service": {
"$id": "#/properties/service",
"title": "Service settings",
"description": "Settings for the Service providing access to storage array metrics.",
"type": "object",
"default": {
"type": "ClusterIP",
"port": "9090"
},
"required": [
"type",
"port"
],
"properties": {
"type": {
"$id": "#/properties/service/properties/type",
"title": "Service type",
"description": "The type of Service to create, ClusterIP for access solely from within the cluster or NodePort to provide access from outside the cluster.",
"type": "string",
"default": "ClusterIP",
"enum": [ "ClusterIP", "NodePort" ]
},
"port": {
"$id": "#/properties/service/properties/port",
"title": "Service port",
"description": "The TCP port at which to expose access to storage array metrics within the cluster.",
"type": "integer",
"default": 9090,
"minimum": 0,
"maximum": 65535
},
"nodePort": {
"$id": "#/properties/service/properties/nodePort",
"title": "Node port",
"description": "The TCP port at which to expose access to storage array metrics externally at each cluster node, if the Service type is NodePort and automatic assignment is not desired.",
"type": "integer",
"minimum": 0,
"maximum": 65535
},
"labels": {
"$id": "#/properties/service/properties/labels",
"title": "Custom labels",
"description": "Labels to add to the Service, for example to include target labels in a ServiceMonitor scrape configuration.",
"type": "object",
"additionalProperties": true
},
"annotations": {
"$id": "#/properties/service/properties/annotations",
"title": "Custom annotations",
"description": "Annotations to add to the Service, for example to configure it as a scrape target when using the Prometheus Helm chart's default configuration.",
"type": "object",
"additionalProperties": true
}
},
"additionalProperties": false
},
"serviceMonitor": {
"$id": "#/properties/serviceMonitor",
"title": "ServiceMonitor settings",
"description": "Settings for the ServiceMonitor scraped by the Prometheus Operator.",
"type": "object",
"default": {
"enable": false,
"targetLabels": []
},
"properties": {
"enable": {
"$id": "#/properties/serviceMonitor/properties/enable",
"title": "Enable ServiceMonitor for Array Exporter",
"description": "description",
"type": "boolean",
"additionalProperties": true
},
"targetLabels": {
"$id": "#/properties/serviceMonitor/properties/targetLabels",
"title": "Service target labels",
"description": "Labels from the Service to add to the scraped metric labels.",
"type": "array",
"additionalProperties": true
}
},
"additionalProperties": false
},
"global": {}
},
"additionalProperties": false
}