gates / gates (push) Successful in 2m29s
- audits/linetest-2026-10-27/: the hold failed four times as built (qBittorrent drains ~14 s), the fix 710ceac, the test through the hold on 0.346.0-rc.1 (94.5 Mbit/s, the limit back exactly), teardown. - audits/release-2026-10-27/: builds, agent release + signed updates, per-box and global floors, box walk. - 09 §3 decisions 269 (R-1250 fix the same day) and 270 (R-1218 live proof waived); D55's window result in 268. - 08 §: the drain-wait design line. STATUS, CONTEXT, register (223 -> 214).
26 lines
1.8 KiB
Bash
Executable File
26 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# dooplex_qb.sh add|status|remove — R-1250 live test (2026-10-27) only: DooPlex's qBittorrent as the DOWNLOAD-ONLY peer.
|
|
# add: the torrent saved to the pod's /tmp/r1250 (never a media folder), its download capped at 375000 B/s (3 Mbit/s,
|
|
# above the agent's 2 Mbit/s quiet line), the seed's address given as its peer. remove: the torrent AND its data.
|
|
set -u
|
|
H=8828f12fe7899fa6a8a1c4994c26f11ae19eb6fa; TOR=$(dirname "$0")/../p8ev/r1250.torrent
|
|
P=$(sudo kubectl -n servarr-system get pod -l app=qbittorrent -o name | head -1); P=${P#pod/}
|
|
x(){ sudo kubectl -n servarr-system exec "$P" -- "$@"; }
|
|
B=http://127.0.0.1:8080/api/v2
|
|
case "$1" in
|
|
add)
|
|
sudo kubectl -n servarr-system cp "$TOR" "$P:/tmp/r1250.torrent" >/dev/null
|
|
x curl -s -F torrents=@/tmp/r1250.torrent -F savepath=/tmp/r1250 -F dlLimit=375000 -F category=cc-r1250 $B/torrents/add; echo
|
|
sleep 3
|
|
x curl -s --data "hashes=$H&limit=375000" $B/torrents/setDownloadLimit; x curl -s --data "hashes=$H&value=0" $B/torrents/setShareLimits >/dev/null 2>&1
|
|
x curl -s --data "hashes=$H&peers=192.168.0.155:6881" $B/torrents/addPeers; echo
|
|
x rm -f /tmp/r1250.torrent ;;
|
|
status)
|
|
x curl -s "$B/torrents/info?hashes=$H" | python3 -c 'import json,sys
|
|
for t in json.load(sys.stdin): print(t["name"], t["state"], "%.1f%%" % (t["progress"]*100), "dl %.2f Mbit/s" % (t["dlspeed"]*8/1e6), "limit", t["dl_limit"], "seeds", t["num_seeds"], "save", t["save_path"])' ;;
|
|
remove)
|
|
x curl -s --data "hashes=$H&deleteFiles=true" $B/torrents/delete; sleep 3
|
|
echo "left in the list: $(x curl -s "$B/torrents/info?hashes=$H")"; echo "left on disk: $(x sh -c 'ls -la /tmp/r1250 2>&1 | head -3')"
|
|
x curl -s "$B/torrents/categories" | grep -q cc-r1250 && x curl -s --data "categories=cc-r1250" $B/torrents/removeCategories; echo "categories: $(x curl -s $B/torrents/categories | head -c 200)" ;;
|
|
esac
|