state: stopped
- name: Backup SpamAssassin DB
- shell: "exec sa-learn --backup >~/tmp/sa-learn.backup@{{ inventory_hostname }}"
+ shell: "sa-learn --sync && exec sa-learn --backup >~/tmp/sa-learn.backup@{{ inventory_hostname }}"
- name: Fetch SpamAssassin DB backup
synchronize:
src: "~/tmp/sa-learn.backup@{{ inventory_hostname }}"
when: inventory_hostname != 'localhost'
- name: Combine SpamAssassin DB backups
- shell: "cd ~/tmp && exec cat sa-learn.backup.* >sa-learn.backup"
+ shell: "exec {{ playbook_dir }}/sa-merge-all.py -o sa-learn.backup sa-learn.backup@*"
+ args:
+ chdir: "~/tmp"
when: inventory_hostname == 'localhost'
- block:
synchronize:
src: "~/tmp/sa-learn.backup"
dest: "~/tmp/sa-learn.backup"
- - name: Combine SpamAssassin DB backups
- shell: "cd tmp && sa-learn --clear && sa-learn --restore sa-learn.backup && exec sa-learn --sync"
+ - name: Restore combined SpamAssassin DB
+ shell: "sa-learn --clear && sa-learn --restore sa-learn.backup && exec sa-learn --sync"
+ args:
+ chdir: "~/tmp"
- name: Start SpamAssassin
become: true
when: inventory_hostname != 'localhost'
- name: Cleanup
- shell: "cd ~/tmp && exec rm sa-learn.backup*"
+ shell: "exec rm sa-learn.backup*"
+ args:
+ chdir: "~/tmp"