mirror of
https://github.com/aljazceru/addons.git
synced 2025-12-17 13:14:21 +01:00
* Update samba add-on to use Bashio #735 * Updated info log entry for allowed hosts * Shellcheck update * Remove old configpath * Fix for ALLOW_HOSTS issue * Code optimization using bashio commands. Removing debug line. * Error Log update and removal of legacy code * 🚑 Fixes bashio nok exit call Signed-off-by: Franck Nijhof <frenck@addons.community>
This commit is contained in:
committed by
Franck Nijhof
parent
d161254709
commit
4ae58927ce
@@ -1,5 +1,8 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 8.2
|
||||||
|
- Update from bash to bashio
|
||||||
|
|
||||||
## 8.1
|
## 8.1
|
||||||
- Update Samba to version 4.8.8
|
- Update Samba to version 4.8.8
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "Samba share",
|
"name": "Samba share",
|
||||||
"version": "8.1",
|
"version": "8.2",
|
||||||
"slug": "samba",
|
"slug": "samba",
|
||||||
"description": "Expose Hass.io folders with SMB/CIFS",
|
"description": "Expose Hass.io folders with SMB/CIFS",
|
||||||
"url": "https://home-assistant.io/addons/samba/",
|
"url": "https://home-assistant.io/addons/samba/",
|
||||||
|
|||||||
43
samba/run.sh
43
samba/run.sh
@@ -1,37 +1,34 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bashio
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
CONFIG_PATH=/data/options.json
|
WORKGROUP=$(bashio::config 'workgroup')
|
||||||
|
INTERFACE=$(bashio::config 'interface')
|
||||||
WORKGROUP=$(jq --raw-output '.workgroup' $CONFIG_PATH)
|
ALLOW_HOSTS=$(bashio::config "allow_hosts | join(\" \")")
|
||||||
INTERFACE=$(jq --raw-output '.interface // empty' $CONFIG_PATH)
|
USERNAME=$(bashio::config 'username')
|
||||||
ALLOW_HOSTS=$(jq --raw-output '.allow_hosts | join(" ")' $CONFIG_PATH)
|
PASSWORD=$(bashio::config 'password')
|
||||||
USERNAME=$(jq --raw-output '.username // empty' $CONFIG_PATH)
|
|
||||||
PASSWORD=$(jq --raw-output '.password // empty' $CONFIG_PATH)
|
|
||||||
|
|
||||||
WAIT_PIDS=()
|
WAIT_PIDS=()
|
||||||
NAME=
|
NAME=
|
||||||
|
|
||||||
# Check Login data
|
# Check Login data
|
||||||
if [ -z "${USERNAME}" ] || [ -z "${PASSWORD}" ]; then
|
if ! bashio::config.has_value 'username' || ! bashio::config.has_value 'password'; then
|
||||||
echo "[ERROR] No valid login data inside options!"
|
bashio::exit.nok "No valid login data inside options!"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Read hostname from API
|
# Read hostname from API or setting default "hassio"
|
||||||
if ! NAME="$(curl -s -f -H "X-Hassio-Key: ${HASSIO_TOKEN}" http://hassio/info | jq --raw-output '.data.hostname')"; then
|
NAME=$(bashio::info.hostname)
|
||||||
echo "[WARN] Can't read hostname, use default!"
|
if bashio::var.is_empty "${NAME}"; then
|
||||||
|
bashio::log.warn "Can't read hostname, using default."
|
||||||
NAME="hassio"
|
NAME="hassio"
|
||||||
else
|
|
||||||
echo "[INFO] Read hostname: ${NAME}"
|
|
||||||
fi
|
fi
|
||||||
|
bashio::log.info "Hostname: ${NAME}"
|
||||||
|
|
||||||
# Setup config
|
# Setup config
|
||||||
sed -i "s|%%WORKGROUP%%|$WORKGROUP|g" /etc/smb.conf
|
sed -i "s|%%WORKGROUP%%|${WORKGROUP}|g" /etc/smb.conf
|
||||||
sed -i "s|%%NAME%%|$NAME|g" /etc/smb.conf
|
sed -i "s|%%NAME%%|${NAME}|g" /etc/smb.conf
|
||||||
sed -i "s|%%INTERFACE%%|$INTERFACE|g" /etc/smb.conf
|
sed -i "s|%%INTERFACE%%|${INTERFACE}|g" /etc/smb.conf
|
||||||
sed -i "s|%%ALLOW_HOSTS%%|$ALLOW_HOSTS|g" /etc/smb.conf
|
sed -i "s|%%USERNAME%%|${USERNAME}|g" /etc/smb.conf
|
||||||
sed -i "s|%%USERNAME%%|$USERNAME|g" /etc/smb.conf
|
sed -i "s#%%ALLOW_HOSTS%%#${ALLOW_HOSTS}#g" /etc/smb.conf
|
||||||
|
|
||||||
# Init users
|
# Init users
|
||||||
addgroup "${USERNAME}"
|
addgroup "${USERNAME}"
|
||||||
@@ -48,10 +45,10 @@ WAIT_PIDS+=($!)
|
|||||||
|
|
||||||
# Register stop
|
# Register stop
|
||||||
function stop_samba() {
|
function stop_samba() {
|
||||||
echo "Kill Processes..."
|
bashio::log.info "Kill Processes..."
|
||||||
kill -15 "${WAIT_PIDS[@]}"
|
kill -15 "${WAIT_PIDS[@]}"
|
||||||
wait "${WAIT_PIDS[@]}"
|
wait "${WAIT_PIDS[@]}"
|
||||||
echo "Done."
|
bashio::log.info "Done."
|
||||||
}
|
}
|
||||||
trap "stop_samba" SIGTERM SIGHUP
|
trap "stop_samba" SIGTERM SIGHUP
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user