c885b5acf4
Measured on demo-felhom (N100, 16 GB): 61 apps deployed and removed through the product, sampled every 5 s; heavy apps with one real action (Immich 200 photos, Jellyfin transcode, Paperless OCR, Nextcloud 500 MB, ...). sizing.json for the estimator (tools/build_sizing.py), SIZING.md with the proposed minimum machine, METHOD.md. Power is RAPL CPU-package only (no meter). R-993 asks the operator to approve the minimum machine; R-994 lists catalog limits/requests that are too low; R-995 records leftover unnamed volumes after removal. R-231's dated check measured: dooplex-backup.service success, journal green.
19 lines
1.0 KiB
Bash
Executable File
19 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# queue.sh — run bench batches one after another on the N100 (only this session deploys there).
|
|
# heavy:<app> up <app> -> actions.sh <app> -> 15 min rest -> down -> analyze
|
|
# batch:<tag>:<a,b,c> up a b c -> 15 min rest -> down -> analyze
|
|
# Each batch copies its evidence before removing anything (bench.py down). A batch that fails
|
|
# still runs `down`, so nothing is left deployed.
|
|
cd "$(dirname "$0")"
|
|
for item in "$@"; do
|
|
IFS=: read -r kind tag apps <<<"$item"
|
|
if [ "$kind" = heavy ]; then apps=$tag; fi
|
|
list=${apps//,/ }
|
|
echo "=== $(date -u +%T) $kind $tag: $list"
|
|
python3 -I bench.py up "$tag" $list | tail -3
|
|
if [ "$kind" = heavy ]; then python3 -I run_action.py "$tag" "$tag" | grep -E '^@|->|up after|never|token length|status|trusted|media|ingest|library|transcode|onboarding|documents|api auth|mkcol|startup|add-library' | tail -25; fi
|
|
python3 -I bench.py down "$tag" $list | tail -4
|
|
python3 -I analyze.py "../evidence/$tag" | head -20
|
|
done
|
|
echo "=== $(date -u +%T) queue done"
|