mirror of
https://github.com/aljazceru/addons.git
synced 2025-12-17 21:24:20 +01:00
59 lines
1.1 KiB
Bash
59 lines
1.1 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
HASSIO_API="http://172.17.0.2"
|
|
|
|
# helppage
|
|
if [ "$1" == "help" ] || [ "$#" -lt 2 ]; then
|
|
cat << EOF
|
|
---- Hass.IO Cli ----
|
|
|
|
HomeAssistant:
|
|
$ hassio homeassistant logs
|
|
$ hassio homeassistant restart
|
|
$ hassio homeassistant update
|
|
|
|
Host:
|
|
$ hassio host restart
|
|
$ hassio host shutdown
|
|
$ hassio host update
|
|
EOF
|
|
fi
|
|
|
|
function call_api() {
|
|
if ! api_ret="$(curl -s -X $1 "$HASSIO_API/$2/$3")"; then
|
|
echo "API error: $api_ret"
|
|
exit 1
|
|
fi
|
|
echo "$api_ret"
|
|
}
|
|
|
|
######
|
|
# homeassistant functions
|
|
if [ "$1" == "homeassistant" ]; then
|
|
hass_cmd=('logs' 'restart' 'update')
|
|
if [[ ! ${hass_cmd[*]} =~ $2 ]]; then
|
|
echo "No homeassistant command '$2' found!"
|
|
exit 1
|
|
fi
|
|
|
|
# logs
|
|
if [ "$2" == "logs" ]; then
|
|
call_api GET "$1" "$2"
|
|
else
|
|
call_api POST "$1" "$2"
|
|
fi
|
|
fi
|
|
|
|
######
|
|
# host functions
|
|
if [ "$1" == "host" ]; then
|
|
hass_cmd=('restart' 'shutdown' 'update')
|
|
if [[ ! ${hass_cmd[*]} =~ $2 ]]; then
|
|
echo "No host command '$2' found!"
|
|
exit 1
|
|
fi
|
|
|
|
call_api POST "$1" "$2"
|
|
fi
|