1
0
mirror of https://github.com/home-assistant/operating-system.git synced 2026-05-04 15:49:01 +01:00
Files
operating-system/buildroot-external/rootfs-overlay/usr/bin/ha
T
Jan Čermák 78d281fce1 Only run HA CLI interactively if stdout is a terminal (#3292)
* Only run HA CLI interactively if stdout is a terminal

Flags for running HA CLI commands in an interactive shell added in #3238
cause the command to fail if the process is not running in a terminal.
This is needed for example for the fsfreeze hook, otherwise the command
fails, as seen in this trace when the hook is executed:

-----------
+ '[' thaw '=' freeze ]
+ '[' thaw '=' thaw ]
+ echo 'File system thaw requested, thawing Home Assistant'
File system thaw requested, thawing Home Assistant
+ ha backups thaw
the input device is not a TTY
------------

However, for example on Proxmox this message is not logged anywhere and
the hook just fails silently (i.e. it doesn't cause the backup to fail).

Fixes #3251

* Use -i also when not running in a terminal
2024-04-08 15:43:12 +02:00

12 lines
346 B
Bash
Executable File

#!/bin/sh
# ==============================================================================
# HA utility
# ==============================================================================
if [ -t 1 ]; then
# stdout (fd 1) must be terminal, otherwise `-t` causes error
docker exec -it hassio_cli ha "$@"
else
docker exec -i hassio_cli ha "$@"
fi