From 5593e65eab416366abbbd8f9a71cca2cd3c93f19 Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Fri, 17 Oct 2025 18:19:00 +0100 Subject: [PATCH] [Test] Use xargs to avoid argument list too long error Pass file list through xargs instead of command substitution to handle 1000+ files, while keeping rspamc -n parallelism --- test/integration/scripts/integration-test.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/integration/scripts/integration-test.sh b/test/integration/scripts/integration-test.sh index 287a351cb2..941949a9d8 100755 --- a/test/integration/scripts/integration-test.sh +++ b/test/integration/scripts/integration-test.sh @@ -154,9 +154,9 @@ echo "============================================================" echo "" echo "Scanning $TOTAL_EMAILS emails (parallelism: $PARALLEL)..." -# Scan all files from the corpus -rspamc -h "$RSPAMD_HOST:$CONTROLLER_PORT" -P "$PASSWORD" -n "$PARALLEL" -j \ - $(cat "$DATA_DIR/shuffled_files.txt") > "$DATA_DIR/scan_results.json" 2>&1 +# Scan all files from the corpus using xargs to handle long argument list +cat "$DATA_DIR/shuffled_files.txt" | xargs rspamc -h "$RSPAMD_HOST:$CONTROLLER_PORT" \ + -P "$PASSWORD" -n "$PARALLEL" -j > "$DATA_DIR/scan_results.json" 2>&1 echo "✓ Scanning complete" echo "" @@ -231,8 +231,8 @@ if [ "$TEST_PROXY" = "true" ]; then echo "Testing via proxy worker ($PROXY_PORT)..." # Use a sample of files for proxy test - rspamc -h "$RSPAMD_HOST:$PROXY_PORT" -n "$PARALLEL" -j \ - $(head -n 100 "$DATA_DIR/shuffled_files.txt") > "$DATA_DIR/proxy_results.json" 2>&1 + head -n 100 "$DATA_DIR/shuffled_files.txt" | xargs rspamc -h "$RSPAMD_HOST:$PROXY_PORT" \ + -n "$PARALLEL" -j > "$DATA_DIR/proxy_results.json" 2>&1 echo "✓ Proxy test complete" echo "Results saved to $DATA_DIR/proxy_results.json" fi -- 2.47.3