mirror of
https://github.com/Quad4-Software/Reticulum-Go
synced 2026-08-29 23:48:44 -04:00
40 lines
1.2 KiB
Bash
Executable file
40 lines
1.2 KiB
Bash
Executable file
#!/bin/sh
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
# Speedtest daemon entrypoint. Results go to stdout for docker logs.
|
|
|
|
set -eu
|
|
|
|
CONFIG_DIR="${RNS_CONFIG:-/data}"
|
|
DEFAULT_CFG="/etc/reticulum-go/config.default"
|
|
PORT="${SPEEDTEST_PORT:-4242}"
|
|
IFACE="${SPEEDTEST_IFACE:-all}"
|
|
BYTES="${SPEEDTEST_BYTES:-2097152}"
|
|
ANNOUNCE="${SPEEDTEST_ANNOUNCE:-120}"
|
|
JSON="${SPEEDTEST_JSON:-1}"
|
|
IDENTITY="${SPEEDTEST_IDENTITY:-$CONFIG_DIR/storage/identities/speedtest}"
|
|
|
|
mkdir -p "$CONFIG_DIR/storage/identities"
|
|
|
|
if [ ! -f "$CONFIG_DIR/config" ]; then
|
|
echo "speedtest: seeding default config into $CONFIG_DIR/config" >&2
|
|
sed "s/__SPEEDTEST_PORT__/${PORT}/g" "$DEFAULT_CFG" > "$CONFIG_DIR/config"
|
|
fi
|
|
|
|
JSON_FLAG=
|
|
case "$JSON" in
|
|
1|true|yes|YES|True) JSON_FLAG=-json ;;
|
|
esac
|
|
|
|
echo "speedtest: starting daemon iface=${IFACE} bytes=${BYTES} announce=${ANNOUNCE}s" >&2
|
|
echo "speedtest: config=${CONFIG_DIR} identity=${IDENTITY}" >&2
|
|
|
|
# "$@" is docker CMD (optional extra flags). Results stay on stdout for docker logs.
|
|
exec /usr/local/bin/reticulum-go speedtest \
|
|
-daemon \
|
|
-config "$CONFIG_DIR" \
|
|
-identity "$IDENTITY" \
|
|
-iface "$IFACE" \
|
|
-bytes "$BYTES" \
|
|
-announce "$ANNOUNCE" \
|
|
$JSON_FLAG \
|
|
"$@"
|