TrueChartsClone/charts/stable/home-assistant/values.yaml

161 lines
4.5 KiB
YAML

image:
repository: tccr.io/truecharts/home-assistant
pullPolicy: IfNotPresent
tag: 2022.9.6@sha256:5d91dfff0902b63186f3bdb9f33fbfae989005371bf1a8b2851e0e9a26df126f
securityContext:
readOnlyRootFilesystem: false
runAsNonRoot: false
podSecurityContext:
runAsUser: 0
runAsGroup: 0
service:
main:
ports:
main:
port: 8123
targetPort: 8123
initContainers:
init:
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
command: ["/config/init/init.sh"]
volumeMounts:
- name: init
mountPath: "/config/init"
- name: config
mountPath: "/config"
# # Enable devices to be discoverable
# hostNetwork: true
# # When hostNetwork is true set dnsPolicy to ClusterFirstWithHostNet
# dnsPolicy: ClusterFirstWithHostNet
# Enable a prometheus-operator servicemonitor
prometheus:
serviceMonitor:
enabled: false
# interval: 1m
# additionalLabels: {}
persistence:
config:
enabled: true
mountPath: "/config"
init:
enabled: "true"
mountPath: "/config/init"
readOnly: true
type: "custom"
volumeSpec:
configMap:
name: '{{ include "tc.common.names.fullname" . }}-init'
defaultMode: 0777
configmap:
init:
enabled: true
data:
init.sh: |-
#!/bin/sh
if test -f "/config/configuration.yaml"; then
echo "configuration.yaml exists."
if grep -q recorder: "/config/configuration.yaml"; then
echo "configuration.yaml already contains recorder"
else
cat /config/init/recorder.default >> /config/configuration.yaml
fi
if grep -q http: "/config/configuration.yaml"; then
echo "configuration.yaml already contains http section"
else
cat /config/init/http.default >> /config/configuration.yaml
fi
else
echo "configuration.yaml does NOT exist."
cp /config/init/configuration.yaml.default /config/configuration.yaml
cat /config/init/recorder.default >> /config/configuration.yaml
cat /config/init/http.default >> /config/configuration.yaml
fi
echo "Creating include files..."
for include_file in groups.yaml automations.yaml scripts.yaml scenes.yaml; do
if test -f "/config/$include_file"; then
echo "$include_file exists."
else
echo "$include_file does NOT exist."
touch "/config/$include_file"
fi
done
cd "/config" || echo "Could not change path to /config"
echo "Creating custom_components directory..."
mkdir "/config/custom_components" || echo "custom_components directory already exists"
echo "Changing to the custom_components directory..."
cd "/config/custom_components" || echo "Could not change path to /config/custom_components"
echo "Downloading HACS"
wget "https://github.com/hacs/integration/releases/latest/download/hacs.zip" || exit 0
if [ -d "/config/custom_components/hacs" ]; then
echo "HACS directory already exist, cleaning up..."
rm -R "/config/custom_components/hacs"
fi
echo "Creating HACS directory..."
mkdir "/config/custom_components/hacs"
echo "Unpacking HACS..."
unzip "/config/custom_components/hacs.zip" -d "/config/custom_components/hacs" >/dev/null 2>&1
echo "Removing HACS zip file..."
rm "/config/custom_components/hacs.zip"
echo "Installation complete."
configuration.yaml.default: |-
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Text to speech
tts:
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
recorder.default: |-
recorder:
purge_keep_days: 30
commit_interval: 3
db_url: {{ ( printf "%s?client_encoding=utf8" ( .Values.postgresql.url.complete | trimAll "\"" ) ) | quote }}
http.default: |-
http:
use_x_forwarded_for: true
trusted_proxies:
- 172.16.0.0/16
postgresql:
enabled: true
postgresqlUsername: home-assistant
postgresqlDatabase: home-assistant
existingSecret: "dbcreds"
influxdb:
enabled: false
architecture: standalone
database: home_assistant
authEnabled: false
persistence:
enabled: false
# storageClass: ""
#
portal:
enabled: true