{ "1.0.120": { "healthy": true, "supported": true, "healthy_error": null, "location": "/__w/charts/charts/charts/home-assistant/1.0.120", "last_update": "2023-11-14 10:11:57", "required_features": [ "definitions/timezone", "normalize/ixVolume" ], "human_version": "2023.11.2_1.0.120", "version": "1.0.120", "chart_metadata": { "name": "home-assistant", "description": "Home Assistant App for TrueNAS SCALE", "annotations": { "title": "Home Assistant" }, "type": "application", "version": "1.0.120", "apiVersion": "v2", "appVersion": "2023.11.2", "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/home-assistant/home-assistant", "icon": "https://media.sys.truenas.net/apps/home-assistant/icons/icon.png", "sources": [ "https://github.com/home-assistant/home-assistant", "https://github.com/truenas/charts/tree/master/charts/home-assistant" ], "keywords": [ "home-automation" ] }, "app_metadata": { "runAsContext": [ { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Home-Assistant runs as root user." }, { "userName": "root", "groupName": "root", "gid": 0, "uid": 0, "description": "Postgres runs as root user." } ], "capabilities": [ { "name": "CHOWN", "description": "Home Assistant and Postgres are able to chown files." }, { "name": "FOWNER", "description": "Home Assistant and Postgres are able to bypass permission checks for it's sub-processes." }, { "name": "SYS_CHROOT", "description": "Home Assistant and Postgres are able to use chroot." }, { "name": "MKNOD", "description": "Home Assistant and Postgres are able to create device nodes." }, { "name": "DAC_OVERRIDE", "description": "Home Assistant and Postgres are able to bypass permission checks." }, { "name": "FSETID", "description": "Home Assistant and Postgres are able to set file capabilities." }, { "name": "KILL", "description": "Home Assistant and Postgres are able to kill processes." }, { "name": "SETGID", "description": "Home Assistant and Postgres are able to set group ID for it's sub-processes." }, { "name": "SETUID", "description": "Home Assistant and Postgres are able to set user ID for it's sub-processes." }, { "name": "SETPCAP", "description": "Home Assistant and Postgres are able to set process capabilities." }, { "name": "NET_BIND_SERVICE", "description": "Home Assistant and Postgres are able to bind to privileged ports." }, { "name": "SETFCAP", "description": "Home Assistant and Postgres are able to set file capabilities." }, { "name": "NET_RAW", "description": "Home Assistant and Postgres are able to use raw sockets." }, { "name": "AUDIT_WRITE", "description": "Home Assistant and Postgres are able to write to audit log." } ], "hostMounts": [] }, "schema": { "groups": [ { "name": "Configuration", "description": "Home Assistant application configuration" }, { "name": "Storage", "description": "Configure storage for homeassistant" }, { "name": "Networking", "description": "Networking Configuration for homeassistant" }, { "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 homeassistant", "group": "Networking", "schema": { "type": "int", "min": 8000, "max": 65535, "default": 20810, "required": true } }, { "variable": "timezone", "label": "Configure timezone", "group": "Configuration", "description": "Configure timezone for Home Assistant", "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": "hostNetwork", "label": "Enable Host Network", "group": "Networking", "schema": { "type": "boolean", "default": false } }, { "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": "Storage User ID", "description": "User ID of the storage volume being used (application will chown the storage volume path with specified UID)", "group": "Configuration", "schema": { "type": "int", "default": 568, "min": 1, "max": 65535 } }, { "variable": "ownerGID", "label": "Storage Group ID", "description": "Group ID of the storage volume being used (application will chown the storage volume path with specified GID)", "group": "Configuration", "schema": { "type": "int", "default": 568, "min": 1, "max": 65535 } }, { "variable": "environmentVariables", "label": "Home Assistant 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": "appVolumeMounts", "label": "Home Assistant 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 Home Assistant Configuration Storage Volume", "schema": { "type": "boolean", "default": false, "show_subquestions_if": true, "subquestions": [ { "variable": "hostPath", "label": "Host Path for Home Assistant Configuration Storage Volume", "schema": { "type": "hostpath", "required": true } } ] } } ] } }, { "variable": "media", "label": "Storage Volume for Media", "schema": { "type": "dict", "attrs": [ { "variable": "datasetName", "label": "Media Storage Volume Dataset Name", "schema": { "type": "string", "hidden": true, "$ref": [ "normalize/ixVolume" ], "show_if": [ [ "hostPathEnabled", "=", false ] ], "default": "ix-media", "editable": false } }, { "variable": "mountPath", "label": "Media Storage Mount Path", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "hidden": true, "editable": true, "default": "/media" } }, { "variable": "hostPathEnabled", "label": "Enable Custom Host Path for Home Assistant Media Storage Volume", "schema": { "type": "boolean", "default": false, "show_subquestions_if": true, "subquestions": [ { "variable": "hostPath", "label": "Host Path for Home Assistant Media Storage Volume", "schema": { "type": "hostpath", "required": true } } ] } } ] } } ] } }, { "variable": "postgresAppVolumeMounts", "label": "Postgres Storage", "group": "Storage", "schema": { "type": "dict", "hidden": true, "attrs": [ { "variable": "postgres-data", "label": "Postgres Data Volume", "schema": { "type": "dict", "attrs": [ { "variable": "datasetName", "label": "Postgres Data Volume Name", "schema": { "type": "string", "$ref": [ "normalize/ixVolume" ], "default": "ix-postgres_data", "editable": false } }, { "variable": "mountPath", "label": "Postgresql Data Mount Path", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "editable": false, "default": "/var/lib/postgresql/data" } } ] } }, { "variable": "postgres-backup", "label": "Postgres Backup Volume", "schema": { "type": "dict", "attrs": [ { "variable": "datasetName", "label": "Postgres Backup Volume Name", "schema": { "type": "string", "$ref": [ "normalize/ixVolume" ], "default": "ix-postgres_backups", "editable": false } }, { "variable": "mountPath", "label": "Postgresql Backup Mount Path", "description": "Path where the volume will be mounted inside the pod", "schema": { "type": "path", "editable": false, "default": "/postgres_backups" } } ] } } ] } }, { "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 Home Assistant 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": "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": "
home-assistant App for TrueNAS SCALE
", "detailed_readme": "home assistant App for TrueNAS SCALE
", "changelog": null } }