Refactor email attachment handling in runtest.sh for improved clarity and reliability
This commit is contained in:
parent
0eab8a0bfa
commit
e698e25a5d
1 changed files with 16 additions and 8 deletions
24
runtest.sh
24
runtest.sh
|
@ -129,19 +129,27 @@ if [ -z "$KISMET_LOG" ] || [ ! -f "$KISMET_LOG" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
python3 $SCRIPT_DIRECTORY/enrich.py --csv $TEST_FILE --pcapng "$KISMET_LOG" --output "$ENRICHED_FILE"
|
# Final email with attachment(s)
|
||||||
|
EMAIL_BODY="The test with UID ${BOOT_ID} is complete. Please collect the probe. Data is attached."
|
||||||
|
EMAIL_SUBJECT="Test ${BOOT_ID} Complete"
|
||||||
|
|
||||||
ATTACHMENTS="$ENRICHED_FILE"
|
# Construct list of attachments safely
|
||||||
|
ATTACHMENTS=()
|
||||||
|
if [ -f "$ENRICHED_FILE" ]; then
|
||||||
|
ATTACHMENTS+=("$ENRICHED_FILE")
|
||||||
|
fi
|
||||||
|
|
||||||
# Check if a failure log exists and add it to the attachments
|
|
||||||
FAILURE_LOG="${TEST_FILE%.csv}-failures.log"
|
|
||||||
if [ -f "$FAILURE_LOG" ]; then
|
if [ -f "$FAILURE_LOG" ]; then
|
||||||
ATTACHMENTS="$ATTACHMENTS -a $FAILURE_LOG"
|
ATTACHMENTS+=("$FAILURE_LOG")
|
||||||
echo "[+] Attaching failure log: $FAILURE_LOG"
|
echo "[+] Attaching failure log: $FAILURE_LOG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Final email with attachment
|
# Check if there's at least one file to send
|
||||||
echo "The test with UID ${BOOT_ID} is complete. Please collect the probe. Data is attached." | \
|
if [ ${#ATTACHMENTS[@]} -eq 0 ]; then
|
||||||
mutt -s "Test ${BOOT_ID} Complete" $ATTACHMENTS -- "$RECIPIENT"
|
echo "[!] No files to attach. Email not sent."
|
||||||
|
else
|
||||||
|
echo "$EMAIL_BODY" | mutt -s "$EMAIL_SUBJECT" "${ATTACHMENTS[@]/#/-a }" -- "$RECIPIENT"
|
||||||
|
fi
|
||||||
|
echo "[+] Email sent to $RECIPIENT with attachments: ${ATTACHMENTS[*]}"
|
||||||
|
|
||||||
sudo kill $SUDO_KEEPALIVE_PID
|
sudo kill $SUDO_KEEPALIVE_PID
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue