Add Multi Targets

Signed-off-by: Patrick Niebeling <patrick.niebeling@adacor.com>
This commit is contained in:
Patrick Niebeling
2022-02-28 15:11:13 +01:00
parent b764dddc21
commit cd3a5891e6
3 changed files with 62 additions and 6 deletions

28
rspamd-learn-ham-multi.sh Normal file
View File

@ -0,0 +1,28 @@
#!/bin/bash
function log_error() { echo `date '+%Y-%m-%d %H:%M:%S'` ERROR: $1 >&2; }
function log() { echo `date '+%Y-%m-%d %H:%M:%S'` INFO: $1; }
MAIL=$(tee)
SERVER_LIST=("http://localhost:11334/learnham" "http://otherhost:11334/learnham")
PASSWORD="p455w0rD"
for SERVER in ${SERVER_LIST[@]}; do
log "Trying to report ham to ${SERVER}"
RETURN=$(/usr/bin/curl -s --connect-timeout 1 -H "Password: ${PASSWORD}" --data-binary --url "${SERVER}" -d "${MAIL}")
STATUS=$?
if [ $STATUS -eq 0 ]; then
log "Ham reported to ${SERVER}: ${RETURN}"
#exit 0
else
log_error "Reporting SPAM failed ${SERVERS[@]}"
if [ $STATUS -eq 28 ]; then
log_error "Reporting Ham to ${SERVER} failed: Connection timed out."
else
log_error "Reporting Ham to ${SERVER} failed: CURL exit status ${STATUS}"
fi
fi
done
exit 1

View File

@ -8,24 +8,24 @@ MAIL=$(tee)
SERVER_LIST="['10.10.115.15', '10.10.115.16']"
PASSWORD="p455w0rD"
SERVERS=($(python -c "from random import shuffle; server=${SERVER_LIST}; shuffle(server); print(' '.join(server))"))
SERVERS=($(python3 -c "from random import shuffle; server=${SERVER_LIST}; shuffle(server); print(' '.join(server))"))
for SERVER in ${SERVERS[@]}; do
log "Trying to report spam to ${SERVER}"
log "Trying to report ham to ${SERVER}"
RETURN=$(/usr/bin/curl -s --connect-timeout 1 -H "Password: ${PASSWORD}" --data-binary --url "http://${SERVER}:11334/learnham" -d "${MAIL}")
STATUS=$?
if [ $STATUS -eq 0 ]; then
log "Spam reported to ${SERVER}: ${RETURN}"
log "HAM reported to ${SERVER}: ${RETURN}"
exit 0
else
if [ $STATUS -eq 28 ]; then
log_error "Reporting SPAM to ${SERVER} failed: Connection timed out."
log_error "Reporting HAM to ${SERVER} failed: Connection timed out."
else
log_error "Reporting SPAM to ${SERVER} failed: CURL exit status ${STATUS}"
log_error "Reporting HAM to ${SERVER} failed: CURL exit status ${STATUS}"
fi
fi
done
log_error "Reporting SPAM failed ${SERVERS[@]}"
log_error "Reporting HAM failed ${SERVERS[@]}"
exit 1

View File

@ -0,0 +1,28 @@
#!/bin/bash
function log_error() { echo `date '+%Y-%m-%d %H:%M:%S'` ERROR: $1 >&2; }
function log() { echo `date '+%Y-%m-%d %H:%M:%S'` INFO: $1; }
MAIL=$(tee)
SERVER_LIST=("http://localhost:11334/learnspam" "http://otherhost:11334/learnspam")
PASSWORD="p455w0rD"
for SERVER in ${SERVER_LIST[@]}; do
log "Trying to report spam to ${SERVER}"
RETURN=$(/usr/bin/curl -s --connect-timeout 1 -H "Password: ${PASSWORD}" --data-binary --url "${SERVER}" -d "${MAIL}")
STATUS=$?
if [ $STATUS -eq 0 ]; then
log "Spam reported to ${SERVER}: ${RETURN}"
#exit 0
else
log_error "Reporting SPAM failed ${SERVERS[@]}"
if [ $STATUS -eq 28 ]; then
log_error "Reporting SPAM to ${SERVER} failed: Connection timed out."
else
log_error "Reporting SPAM to ${SERVER} failed: CURL exit status ${STATUS}"
fi
fi
done
exit 1