From 763e5484e64ad9ab96f756c903ba1565c9fc4910 Mon Sep 17 00:00:00 2001 From: Andrea Dell'Amico Date: Mon, 12 Oct 2020 13:40:48 +0200 Subject: [PATCH] Installl some missing perl modules. Remove the sought rules. --- README.md | 1 + defaults/main.yml | 2 ++ tasks/spamassassin.yml | 23 ++++++++++++++++++++++- vars/main.yml | 8 ++++++++ 4 files changed, 33 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5cb5ff4..91b74b9 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ Installs and configures spamassassin, * Currently supports PostgreSQL as remote backend * The sql present in the `files` directory is valid for spamassassin 3.4 +* Run `spamassassin -D --lint 2>&1 | grep -i failed` to verify that all the required perl packages are present TODO ---- diff --git a/defaults/main.yml b/defaults/main.yml index fd4155b..c79a069 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -5,6 +5,8 @@ spamassassin_sql_backend: False spamassassin_required_hits: 5 spamassassin_report_safe: '0' spamassassin_rewrite_subject: "[SPAM]" +spamassassin_disable_soughtrules: True +spamassassin_rules_version: '3.004000' spamassassin_listen_ip: '127.0.0.1' spamassassin_authorized_ip_addresses: '127.0.0.1' diff --git a/tasks/spamassassin.yml b/tasks/spamassassin.yml index 2974fa6..eb519c4 100644 --- a/tasks/spamassassin.yml +++ b/tasks/spamassassin.yml @@ -11,6 +11,13 @@ yum: pkg={{ spamassassin_sql_rh_packages }} state=present when: spamassassin_db_user_config | bool + - name: Perl modules, from CPAN + cpanm: + name: '{{ item }}' + installdeps: True + system_lib: False + with_items: '{{ spamassassin_rh_perl_packages }}' + - name: Set some SELinux booleans related to spamassassin seboolean: name={{ item }} state=yes persistent=yes with_items: @@ -18,7 +25,21 @@ - 'spamd_update_can_network' when: ansible_distribution_file_variety == "RedHat" - tags: [ 'spamassassin' ] + tags: [ 'spamassassin', 'spamassassin_packages' ] + +- name: Disable the sought rules + block: + - name: Remove the soughtrules configuration and database files + file: dest={{ item }} state=absent + with_items: + - '{{ spamassassin_conf_dir }}/channel.d/sought.conf' + - '/var/lib/spamassassin/{{ spamassassin_rules_version }}/sought_rules_yerp_org.cf' + - '/var/lib/spamassassin/{{ spamassassin_rules_version }}/sought_rules_yerp_org.cf' + - '/var/lib/spamassassin/{{ spamassassin_rules_version }}/sought_rules_yerp_org' + notify: Restart spamassassin + + when: not spamassassin_disable_soughtrules + tags: [ 'spamassassin', 'spamassassin_conf', 'spamassassin_sought' ] - name: Install pyzor from pip block: diff --git a/vars/main.yml b/vars/main.yml index ff4f2fc..447f414 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -7,6 +7,14 @@ spamassassin_rh_packages: - spamassassin - spamassassin-iXhash2 - python2-pip + - perl-Geo-IP + - perl-Net-Patricia + - gcc + +# via cpanm +spamassassin_rh_perl_packages: + - 'Razor2::Client::Agent' + spamassassin_sql_rh_packages: - perl-DBD-Pg