Files

46 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
source "$(dirname "$0")/lib.sh"
umask 077
prepare_secret() {
local path=$1
local value=$2
if [[ ! -f "$path" ]]; then
printf '%s\n' "$value" >"$path"
fi
chmod 600 "$path"
}
mkdir -p \
"$E2E_ROOT/control/runtime/state" \
"$E2E_ROOT/control/runtime/backups" \
"$E2E_ROOT/control/secrets"
prepare_secret \
"$E2E_ROOT/control/secrets/archive_control_token" \
"archive-control-e2e-token"
for node in "${E2E_NODES[@]}"; do
node_root="$E2E_ROOT/$node"
mkdir -p \
"$node_root/secrets" \
"$node_root/runtime/syncthing" \
"$node_root/runtime/sync" \
"$node_root/runtime/qb-config/qBittorrent" \
"$node_root/runtime/qb-data" \
"$node_root/runtime/client-state" \
"$node_root/runtime/client-backups"
prepare_secret \
"$node_root/secrets/archive_control_token" \
"archive-control-e2e-token"
prepare_secret \
"$node_root/secrets/syncthing_api_key" \
"archive-control-e2e-${node}-syncthing-key"
prepare_secret "$node_root/secrets/qb_password" "adminadmin"
qb_config="$node_root/runtime/qb-config/qBittorrent/qBittorrent.conf"
if [[ ! -f "$qb_config" ]]; then
cp "$E2E_ROOT/common/qBittorrent.conf" "$qb_config"
fi
done