{ "2.0.3": { "healthy": true, "supported": false, "healthy_error": null, "location": "/__w/charts/charts/charts/diskoverdata/2.0.3", "last_update": "2025-03-05 14:27:33", "required_features": [ "normalize/ixVolume", "definitions/timezone", "normalize/acl" ], "human_version": "2.0.1_2.0.3", "version": "2.0.3", "chart_metadata": { "name": "diskoverdata", "description": "Diskover is used to monitor size/volumes of distributed dataset.", "annotations": { "title": "Diskover Data" }, "type": "application", "version": "2.0.3", "apiVersion": "v2", "appVersion": "2.0.1", "kubeVersion": ">=1.16.0-0", "maintainers": [ { "name": "truenas", "url": "https://www.truenas.com/", "email": "dev@ixsystems.com" } ], "dependencies": [ { "name": "common", "repository": "file://../../../common", "version": "1.2.9" } ], "home": "https://github.com/diskoverdata/diskover-community", "icon": "https://media.sys.truenas.net/apps/diskoverdata/icons/icon.png", "sources": [ "https://github.com/diskoverdata/diskover-community", "https://github.com/truenas/charts/tree/master/charts/diskoverdata" ], "keywords": [ "storage", "monitoring", "management" ] }, "app_metadata": { "runAsContext": [ { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Diskover runs as root user." }, { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Elastic Search runs as root user." } ], "capabilities": [ { "name": "CHOWN", "description": "Diskover and Elastic Search are able to chown files." }, { "name": "FOWNER", "description": "Diskover and Elastic Search are able to bypass permission checks for it's sub-processes." }, { "name": "SYS_CHROOT", "description": "Diskover and Elastic Search are able to use chroot." }, { "name": "MKNOD", "description": "Diskover and Elastic Search are able to create device nodes." }, { "name": "DAC_OVERRIDE", "description": "Diskover and Elastic Search are able to bypass permission checks." }, { "name": "FSETID", "description": "Diskover and Elastic Search are able to set file capabilities." }, { "name": "KILL", "description": "Diskover and Elastic Search are able to kill processes." }, { "name": "SETGID", "description": "Diskover and Elastic Search are able to set group ID for it's sub-processes." }, { "name": "SETUID", "description": "Diskover and Elastic Search are able to set user ID for it's sub-processes." }, { "name": "SETPCAP", "description": "Diskover and Elastic Search are able to set process capabilities." }, { "name": "NET_BIND_SERVICE", "description": "Diskover and Elastic Search are able to bind to privileged ports." }, { "name": "SETFCAP", "description": "Diskover and Elastic Search are able to set file capabilities." }, { "name": "NET_RAW", "description": "Diskover and Elastic Search are able to use raw sockets." }, { "name": "AUDIT_WRITE", "description": "Diskover and Elastic Search are able to write to audit log." } ], "hostMounts": [] }, "schema": { "groups": [ { "name": "Diskover Data Configuration", "description": "Configure Diskover Data" }, { "name": "User and Group Configuration", "description": "Configure User and Group for Diskover Data" }, { "name": "Advanced Pod Configuration", "description": "Configure Advanced Pod Options for Diskover Data" }, { "name": "Network Configuration", "description": "Configure Network for Diskover Data" }, { "name": "Storage Configuration", "description": "Configure Storage for Diskover Data" }, { "name": "Resources Configuration", "description": "Configure Resources for Diskover Data" } ], "portals": { "web_portal": { "protocols": [ "$kubernetes-resource_configmap_portal_protocol" ], "host": [ "$kubernetes-resource_configmap_portal_host" ], "ports": [ "$kubernetes-resource_configmap_portal_port" ], "path": "$kubernetes-resource_configmap_portal_path" } }, "questions": [ { "variable": "TZ", "group": "Diskover Data Configuration", "label": "Timezone", "schema": { "type": "string", "default": "America/Los_Angeles", "required": true, "$ref": [ "definitions/timezone" ], "enum": [ { "value": "Asia/Damascus", "description": "'Asia/Damascus' timezone" }, { "value": "Asia/Saigon", "description": "'Asia/Saigon' timezone" } ] } }, { "variable": "diskoverConfig", "label": "", "group": "Diskover Data Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "cronSchedule", "label": "Cron Schedule", "description": "The cron schedule for Diskover Data.", "schema": { "type": "string", "default": "0 3 * * *" } }, { "variable": "username", "label": "Username", "description": "The username for Diskover Data.", "schema": { "type": "string", "default": "", "required": true } }, { "variable": "password", "label": "Password", "description": "The password for Diskover Data.", "schema": { "type": "string", "default": "", "required": true, "private": true } }, { "variable": "additionalEnvs", "label": "Additional Environment Variables", "description": "Additional environment variables for Diskover Data.", "schema": { "type": "list", "items": [ { "variable": "env", "label": "Environment Variable", "schema": { "type": "dict", "attrs": [ { "variable": "name", "label": "Name", "schema": { "type": "string", "required": true } }, { "variable": "value", "label": "Value", "schema": { "type": "string", "required": true } } ] } } ] } } ] } }, { "variable": "podOptions", "label": "", "group": "Advanced Pod Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "dnsConfig", "label": "Advanced DNS Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "options", "label": "DNS Options", "schema": { "type": "list", "items": [ { "variable": "optionsEntry", "label": "DNS Option Entry", "schema": { "type": "dict", "attrs": [ { "variable": "name", "label": "Option Name", "schema": { "type": "string", "required": true } }, { "variable": "value", "label": "Option Value", "schema": { "type": "string", "required": true } } ] } } ] } } ] } } ] } }, { "variable": "diskoverID", "label": "", "group": "User and Group Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "user", "label": "User ID", "description": "The user id that Diskover Data files will be owned by.", "schema": { "type": "int", "min": 568, "default": 568, "required": true } }, { "variable": "group", "label": "Group ID", "description": "The group id that Diskover Data files will be owned by.", "schema": { "type": "int", "min": 568, "default": 568, "required": true } } ] } }, { "variable": "diskoverNetwork", "label": "", "group": "Network Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "webPort", "label": "Web Port", "description": "The port for the Diskover Data Web UI.", "schema": { "type": "int", "default": 22510, "min": 9000, "max": 65535, "required": true } } ] } }, { "variable": "diskoverStorage", "label": "", "group": "Storage Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "config", "label": "Diskover Data Config Storage", "description": "The path to store Diskover Data Configuration.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.
\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "ixVolumeConfig", "label": "ixVolume Configuration", "description": "The configuration for the ixVolume dataset.", "schema": { "type": "dict", "show_if": [ [ "type", "=", "ixVolume" ] ], "$ref": [ "normalize/ixVolume" ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "datasetName", "label": "Dataset Name", "description": "The name of the dataset to use for storage.", "schema": { "type": "string", "required": true, "immutable": true, "hidden": true, "default": "config" } }, { "variable": "aclEntries", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Path", "description": "Path to perform ACL", "schema": { "type": "string", "hidden": true } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } } ] } } ] } }, { "variable": "hostPathConfig", "label": "Host Path Configuration", "schema": { "type": "dict", "show_if": [ [ "type", "=", "hostPath" ] ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "acl", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Host Path", "description": "Host Path to perform ACL", "schema": { "type": "hostpath", "required": true, "empty": false } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } }, { "variable": "options", "label": "ACL Options", "schema": { "type": "dict", "attrs": [ { "variable": "force", "label": "Force Flag", "description": "Enabling `Force` applies ACL even if the path has existing data", "schema": { "type": "boolean", "default": false } } ] } } ], "$ref": [ "normalize/acl" ] } }, { "variable": "hostPath", "label": "Host Path", "description": "The host path to use for storage.", "schema": { "type": "hostpath", "show_if": [ [ "aclEnable", "=", false ] ], "required": true } } ] } } ] } }, { "variable": "data", "label": "Diskover Data Data Storage", "description": "The path to store Diskover Data Data.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.
\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "ixVolumeConfig", "label": "ixVolume Configuration", "description": "The configuration for the ixVolume dataset.", "schema": { "type": "dict", "show_if": [ [ "type", "=", "ixVolume" ] ], "$ref": [ "normalize/ixVolume" ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "datasetName", "label": "Dataset Name", "description": "The name of the dataset to use for storage.", "schema": { "type": "string", "required": true, "immutable": true, "hidden": true, "default": "data" } }, { "variable": "aclEntries", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Path", "description": "Path to perform ACL", "schema": { "type": "string", "hidden": true } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } } ] } } ] } }, { "variable": "hostPathConfig", "label": "Host Path Configuration", "schema": { "type": "dict", "show_if": [ [ "type", "=", "hostPath" ] ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "acl", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Host Path", "description": "Host Path to perform ACL", "schema": { "type": "hostpath", "required": true, "empty": false } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } }, { "variable": "options", "label": "ACL Options", "schema": { "type": "dict", "attrs": [ { "variable": "force", "label": "Force Flag", "description": "Enabling `Force` applies ACL even if the path has existing data", "schema": { "type": "boolean", "default": false } } ] } } ], "$ref": [ "normalize/acl" ] } }, { "variable": "hostPath", "label": "Host Path", "description": "The host path to use for storage.", "schema": { "type": "hostpath", "show_if": [ [ "aclEnable", "=", false ] ], "required": true } } ] } } ] } }, { "variable": "esdata", "label": "Elastic Search Data Storage", "description": "The path to store Elastic Search Data.", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.
\nHost Path: Is a path that already exists on the system.\n", "schema": { "type": "string", "required": true, "immutable": true, "default": "ixVolume", "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" } ] } }, { "variable": "ixVolumeConfig", "label": "ixVolume Configuration", "description": "The configuration for the ixVolume dataset.", "schema": { "type": "dict", "show_if": [ [ "type", "=", "ixVolume" ] ], "$ref": [ "normalize/ixVolume" ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "datasetName", "label": "Dataset Name", "description": "The name of the dataset to use for storage.", "schema": { "type": "string", "required": true, "immutable": true, "hidden": true, "default": "esdata" } }, { "variable": "aclEntries", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Path", "description": "Path to perform ACL", "schema": { "type": "string", "hidden": true } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } } ] } } ] } }, { "variable": "hostPathConfig", "label": "Host Path Configuration", "schema": { "type": "dict", "show_if": [ [ "type", "=", "hostPath" ] ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "acl", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Host Path", "description": "Host Path to perform ACL", "schema": { "type": "hostpath", "required": true, "empty": false } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } }, { "variable": "options", "label": "ACL Options", "schema": { "type": "dict", "attrs": [ { "variable": "force", "label": "Force Flag", "description": "Enabling `Force` applies ACL even if the path has existing data", "schema": { "type": "boolean", "default": false } } ] } } ], "$ref": [ "normalize/acl" ] } }, { "variable": "hostPath", "label": "Host Path", "description": "The host path to use for storage.", "schema": { "type": "hostpath", "show_if": [ [ "aclEnable", "=", false ] ], "required": true } } ] } } ] } }, { "variable": "additionalStorages", "label": "Additional Storage", "description": "Additional storage for Diskover Data.", "schema": { "type": "list", "default": [], "items": [ { "variable": "storageEntry", "label": "Storage Entry", "schema": { "type": "dict", "attrs": [ { "variable": "type", "label": "Type", "description": "ixVolume: Is dataset created automatically by the system.
\nHost Path: Is a path that already exists on the system.
\nSMB Share: Is a SMB share that is mounted to a persistent volume claim.\n", "schema": { "type": "string", "required": true, "default": "ixVolume", "immutable": true, "enum": [ { "value": "hostPath", "description": "Host Path (Path that already exists on the system)" }, { "value": "ixVolume", "description": "ixVolume (Dataset created automatically by the system)" }, { "value": "smb-pv-pvc", "description": "SMB Share (Mounts a persistent volume claim to a SMB share)" } ] } }, { "variable": "diskoverDataIndex", "label": "Enable Diskover Data Indexing", "description": "Enable Diskover Data Indexing", "schema": { "type": "boolean" } }, { "variable": "readOnly", "label": "Read Only", "description": "Mount the volume as read only.", "schema": { "type": "boolean", "default": false } }, { "variable": "mountPath", "label": "Mount Path", "description": "The path inside the container to mount the storage.", "schema": { "type": "path", "required": true } }, { "variable": "hostPathConfig", "label": "Host Path Configuration", "schema": { "type": "dict", "show_if": [ [ "type", "=", "hostPath" ] ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "acl", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Host Path", "description": "Host Path to perform ACL", "schema": { "type": "hostpath", "required": true, "empty": false } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } }, { "variable": "options", "label": "ACL Options", "schema": { "type": "dict", "attrs": [ { "variable": "force", "label": "Force Flag", "description": "Enabling `Force` applies ACL even if the path has existing data", "schema": { "type": "boolean", "default": false } } ] } } ], "$ref": [ "normalize/acl" ] } }, { "variable": "hostPath", "label": "Host Path", "description": "The host path to use for storage.", "schema": { "type": "hostpath", "show_if": [ [ "aclEnable", "=", false ] ], "required": true } } ] } }, { "variable": "ixVolumeConfig", "label": "ixVolume Configuration", "description": "The configuration for the ixVolume dataset.", "schema": { "type": "dict", "show_if": [ [ "type", "=", "ixVolume" ] ], "$ref": [ "normalize/ixVolume" ], "attrs": [ { "variable": "aclEnable", "label": "Enable ACL", "description": "Enable ACL for the dataset.", "schema": { "type": "boolean", "default": false } }, { "variable": "datasetName", "label": "Dataset Name", "description": "The name of the dataset to use for storage.", "schema": { "type": "string", "required": true, "immutable": true, "default": "storage_entry" } }, { "variable": "aclEntries", "label": "ACL Configuration", "schema": { "type": "dict", "show_if": [ [ "aclEnable", "=", true ] ], "attrs": [ { "variable": "path", "label": "Path", "description": "Path to perform ACL", "schema": { "type": "string", "hidden": true } }, { "variable": "entries", "label": "ACL Entries", "description": "ACL Entries", "schema": { "type": "list", "items": [ { "variable": "aclEntry", "label": "ACL Entry", "schema": { "type": "dict", "attrs": [ { "variable": "id_type", "label": "ID Type", "schema": { "type": "string", "enum": [ { "value": "USER", "description": "Entry is for a USER" }, { "value": "GROUP", "description": "Entry is for a GROUP" } ], "default": "USER" } }, { "variable": "id", "label": "ID", "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application", "schema": { "type": "int", "required": true, "min": 0 } }, { "variable": "access", "label": "Access", "schema": { "type": "string", "enum": [ { "value": "READ", "description": "Read Access" }, { "value": "MODIFY", "description": "Modify Access" }, { "value": "FULL_CONTROL", "description": "FULL_CONTROL Access" } ] } } ] } } ] } } ] } } ] } }, { "variable": "smbConfig", "label": "SMB Share Configuration", "description": "The configuration for the SMB Share.", "schema": { "type": "dict", "show_if": [ [ "type", "=", "smb-pv-pvc" ] ], "attrs": [ { "variable": "server", "label": "Server", "description": "The server for the SMB share.", "schema": { "type": "string", "required": true } }, { "variable": "share", "label": "Share", "description": "The share name for the SMB share.", "schema": { "type": "string", "required": true } }, { "variable": "domain", "label": "Domain (Optional)", "description": "The domain for the SMB share.", "schema": { "type": "string" } }, { "variable": "username", "label": "Username", "description": "The username for the SMB share.", "schema": { "type": "string", "required": true } }, { "variable": "password", "label": "Password", "description": "The password for the SMB share.", "schema": { "type": "string", "required": true, "private": true } }, { "variable": "size", "label": "Size (in Gi)", "description": "The size of the volume quota.", "schema": { "type": "int", "required": true, "min": 1, "default": 1 } } ] } } ] } } ] } } ] } }, { "variable": "resources", "group": "Resources Configuration", "label": "", "schema": { "type": "dict", "attrs": [ { "variable": "limits", "label": "Limits", "schema": { "type": "dict", "attrs": [ { "variable": "cpu", "label": "CPU", "description": "CPU limit for WG-Easy.", "schema": { "type": "string", "max_length": 6, "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$", "valid_chars_error": "Valid CPU limit formats are
\n- Plain Integer - eg. 1
\n- Float - eg. 0.5
\n- Milicpu - eg. 500m\n", "default": "4000m", "required": true } }, { "variable": "memory", "label": "Memory", "description": "Memory limit for WG-Easy.", "schema": { "type": "string", "max_length": 12, "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$", "valid_chars_error": "Valid Memory limit formats are
\n- Suffixed with E/P/T/G/M/K - eg. 1G
\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi
\n- Plain Integer in bytes - eg. 1024
\n- Exponent - eg. 134e6\n", "default": "8Gi", "required": true } } ] } } ] } } ] }, "app_readme": "

Diskover Data

\n

Diskover Data is used to monitor size/volumes of distributed dataset.

", "detailed_readme": "

Diskover Data

\n

Diskover Data is used to monitor size/volumes of distributed dataset.

", "changelog": null }, "1.0.15": { "healthy": true, "supported": true, "healthy_error": null, "location": "/__w/charts/charts/charts/diskoverdata/1.0.15", "last_update": "2025-03-05 14:27:33", "required_features": [ "normalize/ixVolume", "definitions/timezone" ], "human_version": "2.0.1_1.0.15", "version": "1.0.15", "chart_metadata": { "name": "diskoverdata", "description": "Diskover is used to monitor size/volumes of distributed dataset.", "annotations": { "title": "Diskover Data" }, "type": "application", "version": "1.0.15", "apiVersion": "v2", "appVersion": "2.0.1", "kubeVersion": ">=1.16.0-0", "maintainers": [ { "name": "truenas", "url": "https://www.truenas.com/", "email": "dev@ixsystems.com" } ], "dependencies": [ { "name": "common", "repository": "file://../../../common/2304.0.1", "version": "2304.0.1" } ], "home": "https://github.com/diskoverdata/diskover-community", "icon": "https://media.sys.truenas.net/apps/diskoverdata/icons/icon.png", "sources": [ "https://github.com/diskoverdata/diskover-community", "https://github.com/truenas/charts/tree/master/charts/diskoverdata" ], "keywords": [ "storage", "monitoring", "management" ] }, "app_metadata": { "runAsContext": [ { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Diskover runs as root user." }, { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Elastic Search runs as root user." } ], "capabilities": [ { "name": "CHOWN", "description": "Diskover and Elastic Search are able to chown files." }, { "name": "FOWNER", "description": "Diskover and Elastic Search are able to bypass permission checks for it's sub-processes." }, { "name": "SYS_CHROOT", "description": "Diskover and Elastic Search are able to use chroot." }, { "name": "MKNOD", "description": "Diskover and Elastic Search are able to create device nodes." }, { "name": "DAC_OVERRIDE", "description": "Diskover and Elastic Search are able to bypass permission checks." }, { "name": "FSETID", "description": "Diskover and Elastic Search are able to set file capabilities." }, { "name": "KILL", "description": "Diskover and Elastic Search are able to kill processes." }, { "name": "SETGID", "description": "Diskover and Elastic Search are able to set group ID for it's sub-processes." }, { "name": "SETUID", "description": "Diskover and Elastic Search are able to set user ID for it's sub-processes." }, { "name": "SETPCAP", "description": "Diskover and Elastic Search are able to set process capabilities." }, { "name": "NET_BIND_SERVICE", "description": "Diskover and Elastic Search are able to bind to privileged ports." }, { "name": "SETFCAP", "description": "Diskover and Elastic Search are able to set file capabilities." }, { "name": "NET_RAW", "description": "Diskover and Elastic Search are able to use raw sockets." }, { "name": "AUDIT_WRITE", "description": "Diskover and Elastic Search are able to write to audit log." } ], "hostMounts": [] }, "schema": { "groups": [ { "name": "Configuration", "description": "Diskover application configuration" }, { "name": "Storage", "description": "Configure storage for Diskover" }, { "name": "Networking", "description": "Networking Configuration for Diskover" }, { "name": "Advanced DNS Settings", "description": "Configure DNS settings" }, { "name": "Resource Limits", "description": "Set CPU/memory limits for Kubernetes Pod" } ], "portals": { "web_portal": { "protocols": [ "http" ], "host": [ "$node_ip" ], "ports": [ "$variable-web_port" ], "path": "/" } }, "questions": [ { "variable": "web_port", "label": "Web Port for Diskover", "group": "Networking", "schema": { "type": "int", "min": 8000, "max": 65535, "default": 22510, "required": true } }, { "variable": "timezone", "label": "Configure timezone", "group": "Configuration", "description": "Configure timezone for Diskover", "schema": { "type": "string", "$ref": [ "definitions/timezone" ], "enum": [ { "value": "Asia/Damascus", "description": "'Asia/Damascus' timezone" }, { "value": "Asia/Saigon", "description": "'Asia/Saigon' timezone" } ], "default": "America/Los_Angeles" } }, { "variable": "dnsConfig", "label": "DNS Configuration", "group": "Advanced DNS Settings", "schema": { "type": "dict", "attrs": [ { "variable": "options", "label": "DNS Options", "schema": { "type": "list", "items": [ { "variable": "optionsEntry", "label": "Option Entry Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "name", "label": "Option Name", "schema": { "type": "string", "required": true } }, { "variable": "value", "label": "Option Value", "schema": { "type": "string", "required": true } } ] } } ] } } ] } }, { "variable": "ownerUID", "label": "Config folder's user id", "description": "Linuxserver uses this user id to configure config's folders permissions", "group": "Configuration", "schema": { "type": "int", "default": 568, "min": 1, "max": 65535 } }, { "variable": "ownerGID", "label": "Config folder's group id", "description": "Linuxserver uses this group id to configure config's folders permissions", "group": "Configuration", "schema": { "type": "int", "default": 568, "min": 1, "max": 65535 } }, { "variable": "diskoverCredentials", "description": "Configure Diskover Initial Password", "label": "Configure Diskover Initial Username and password", "group": "Configuration", "schema": { "type": "dict", "required": true, "additional_attrs": true, "attrs": [ { "variable": "username", "label": "Username", "description": "UserName for Diskover User", "schema": { "type": "string", "default": "admin", "required": true } }, { "variable": "password", "label": "Password", "description": "Initial Password for Diskover User", "schema": { "type": "string", "private": true, "default": "changeme", "required": true } } ] } }, { "variable": "environmentVariables", "label": "Diskover Extra Environment", "group": "Configuration", "schema": { "type": "list", "default": [], "items": [ { "variable": "environmentVariable", "label": "Environment Variable", "schema": { "type": "dict", "attrs": [ { "variable": "name", "label": "Name", "schema": { "type": "string" } }, { "variable": "value", "label": "Value", "schema": { "type": "string" } } ] } } ] } }, { "variable": "cronjobSchedule", "description": "Cronjobs Consist on 5 values in this specific format 'Minute Hour Day Month Week'", "label": "Define cronjob schedule for diskover", "group": "Configuration", "schema": { "type": "string", "default": "0 3 * * *" } }, { "variable": "appVolumeMounts", "label": "Diskover Storage", "group": "Storage", "schema": { "type": "dict", "attrs": [ { "variable": "config", "label": "Storage Volume for Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "datasetName", "label": "Configuration Storage Volume Dataset Name", "schema": { "type": "string", "hidden": true, "$ref": [ "normalize/ixVolume" ], "show_if": [ [ "hostPathEnabled", "=", false ] ], "default": "ix-config", "editable": false } }, { "variable": "mountPath", "label": "Configuration Storage Mount Path", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "hidden": true, "editable": true, "default": "/config" } }, { "variable": "hostPathEnabled", "label": "Enable Custom Host Path for Diskover Configuration Storage Volume", "schema": { "type": "boolean", "default": false, "show_subquestions_if": true, "subquestions": [ { "variable": "hostPath", "label": "Host Path for Diskover Configuration Storage Volume", "schema": { "type": "hostpath", "required": true } } ] } } ] } }, { "variable": "data", "label": "Storage Volume for Data", "schema": { "type": "dict", "attrs": [ { "variable": "datasetName", "label": "Configuration Storage Volume Dataset Name", "schema": { "type": "string", "hidden": true, "$ref": [ "normalize/ixVolume" ], "show_if": [ [ "hostPathEnabled", "=", false ] ], "default": "ix-data", "editable": false } }, { "variable": "mountPath", "label": "Configuration Storage Mount Path", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "hidden": true, "editable": true, "default": "/data" } }, { "variable": "hostPathEnabled", "label": "Enable Custom Host Path for Diskover Data folder to monitor", "schema": { "type": "boolean", "default": false, "show_subquestions_if": true, "subquestions": [ { "variable": "hostPath", "label": "Host Path for Diskover Data folder to monitor", "schema": { "type": "hostpath", "required": true } } ] } } ] } } ] } }, { "variable": "extraDataVolumeMounts", "label": "Add Extra Host Paths For Diskover To Monitor", "group": "Storage", "schema": { "type": "list", "items": [ { "variable": "dataAppVolume", "label": "Host Path Volume", "description": "Add extra Data Volumes for diskover to monitor", "schema": { "type": "dict", "attrs": [ { "variable": "mountPath", "label": "Mount Path in Pod", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "required": true } }, { "variable": "hostPath", "label": "Host Path", "description": "Host path", "schema": { "type": "hostpath", "required": true } } ] } } ] } }, { "variable": "extraAppVolumeMounts", "label": "Extra Host Path Volumes", "group": "Storage", "schema": { "type": "list", "items": [ { "variable": "extraAppVolume", "label": "Host Path Volume", "description": "Add an extra host path volume for Diskover application", "schema": { "type": "dict", "attrs": [ { "variable": "mountPath", "label": "Mount Path in Pod", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "required": true } }, { "variable": "hostPath", "label": "Host Path", "description": "Host path", "schema": { "type": "hostpath", "required": true } } ] } } ] } }, { "variable": "elasticSearchAppVolumeMounts", "label": "elastic search Storage", "group": "Storage", "schema": { "type": "dict", "hidden": true, "attrs": [ { "variable": "esdata", "label": "Storage Volume for Configuration", "schema": { "type": "dict", "attrs": [ { "variable": "datasetName", "label": "Configuration Storage Volume Dataset Name", "schema": { "type": "string", "$ref": [ "normalize/ixVolume" ], "default": "ix-elasticsearch-data", "editable": false } }, { "variable": "mountPath", "label": "Configuration Storage Mount Path", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "editable": false, "default": "/usr/share/elasticsearch/data" } } ] } } ] } }, { "variable": "enableResourceLimits", "label": "Enable Pod resource limits", "group": "Resource Limits", "schema": { "type": "boolean", "default": false } }, { "variable": "cpuLimit", "label": "CPU Limit", "description": "CPU resource limit allow plain integer values with suffix m(milli) e.g 1000m, 100.", "group": "Resource Limits", "schema": { "type": "string", "show_if": [ [ "enableResourceLimits", "=", true ] ], "valid_chars": "^\\d+(?:\\.\\d+(?!.*m$)|m?$)", "default": "4000m" } }, { "variable": "memLimit", "label": "Memory Limit", "group": "Resource Limits", "description": "Memory limits is specified by number of bytes. Followed by quantity suffix like E,P,T,G,M,k and Ei,Pi,Ti,Mi,Gi,Ki can also be used. e.g 129e6, 129M, 128974848000m, 123Mi", "schema": { "type": "string", "show_if": [ [ "enableResourceLimits", "=", true ] ], "valid_chars": "^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$", "default": "8Gi" } } ] }, "app_readme": "

DiskOver App for TrueNAS SCALE

", "detailed_readme": "

DiskOverData

\n

DiskOver App for TrueNAS SCALE

\n

Diskover is a sustainable file management solution for your distributed data.

\n

Introduction

\n

This chart is based on diskoverdata and \ndeployed on kubernetes via helm chart

\n

Configuration

\n

Please refer to questions.yaml for a detailed overview on supported configurable values.

", "changelog": null } }