| #!/bin/sh |
| # |
| # overall run script. Pretty much all of this file will change based on the rules |
| # being generated, and your local configuration. |
| |
| # where the scripts live. This will need to be changed for each site |
| dir=/home/jm/ftp/spamassassin/masses/rule-dev/sought/example_backend |
| |
| # change: where your svn checkout lives |
| sasvndir=/home/jm/ftp/spamassassin |
| |
| # change: where to check in the output file to SVN |
| outsvndir=/home/jm/ftp/spamassassin |
| |
| # change: the targets scanned |
| ( command cd $sasvndir/masses && nice ./mass-check \ |
| --cf='loadplugin Dumptext plugins/Dumptext.pm' \ |
| --cf='loadplugin Mail::SpamAssassin::Plugin::Check' \ |
| -n -o -C=/dev/null \ |
| spam:mbox:$dir/cor-fraud/corpus_spam_fraud \ |
| spam:mbox:$dir/cor-guenther_fraud/spam/*fraud*.mbox \ |
| > $dir/all_w.s ) |
| |
| # change: the targets scanned |
| ( command cd $sasvndir/masses && nice ./mass-check \ |
| --cf='loadplugin Dumptext plugins/Dumptext.pm' \ |
| --cf='loadplugin Mail::SpamAssassin::Plugin::Check' \ |
| -n -o -C=/dev/null \ |
| ham:detect:$dir/cor-ham/* \ |
| ham:mbox:$dir/cor-fraud/corpus_ham_fraud \ |
| ham:mbox:$dir/cor-guenther_fraud/ham/*fraud*.mbox \ |
| > $dir/w.h ) |
| |
| # add already-compiled old logs to the ham collection |
| cd $dir |
| cat logs.h/* w.h > all_w.h |
| |
| # change: rule prefix, required pattern length, required hitrate thresholds |
| nice $sasvndir/masses/rule-dev/seek-phrases-in-log \ |
| --ham $dir/all_w.h \ |
| --spam $dir/all_w.s \ |
| --rules --ruleprefix __SEEK_FRAUD_ --reqpatlength 40 --reqhitrate "2.0 0.3 1.0" \ |
| > out.cf |
| $dir/kill_bad_patterns < out.cf > clean.cf |
| date |
| |
| # change: rule prefix, target file location |
| $dir/mk_meta_rule JM_SOUGHT_FRAUD_ $dir/clean.cf > \ |
| $outsvndir/rulesrc/sandbox/jm/20_sought_fraud.cf \ |
| || exit 1 |
| |
| $sasvndir/spamassassin \ |
| -C $outsvndir/rulesrc/sandbox/jm/20_sought_fraud.cf --lint \ |
| || exit 1 |
| |
| svn commit -m "auto-generated test rules" \ |
| $outsvndir/rulesrc/sandbox/jm/20_sought_fraud.cf \ |
| || exit 1 |
| |
| # change: hostname, path to run on DNS host |
| ssh dnspublishinghost.example.com \ |
| /path/to/jm/svn/trunk/masses/rule-dev/sought/mkzone_remote_svn/run_part2 |
| |