--- # --- # Some Checks # --- - name: Check if file '/etc/postfix/relay_domains' exists stat: path: /etc/postfix/relay_domains register: relay_domains_actual - name: (copy_files.yml) Get checksum of '/etc/postfix/relay_domains' set_fact: relay_domains_sha1: "{{ relay_domains_actual.stat.checksum }}" when: - relay_domains_actual.stat.exists # --- # Copy files - main # --- - name: (copy_files.yml) Copy plain files copy: src: '{{ item.src_path }}' dest: '{{ item.dest_path }}' owner: root group: root mode: '0644' loop: "{{ copy_plain_files }}" loop_control: label: 'dest: {{ item.name }}' when: - copy_plain_files is defined - copy_plain_files|length > 0 tags: - copy-files - copy-plain-files - name: (copy_files.yml) Copy plain files Postfix (/etc/postfix) copy: src: '{{ item.src_path }}' dest: '{{ item.dest_path }}' owner: root group: root mode: '0644' loop: "{{ copy_plain_files_postfix }}" loop_control: label: 'dest: {{ item.name }}' when: - inventory_hostname in groups['mail_server'] - copy_plain_files_postfix is defined - copy_plain_files_postfix|length > 0 tags: - copy-files - copy-plain-files notify: "Reload postfwd" - name: (copy_files.yml) Copy host specific plain files Postfix (/etc/postfix) copy: src: '{{ item.src_path }}' dest: '{{ item.dest_path }}' owner: root group: root mode: '0644' loop: "{{ copy_plain_files_postfix_host_specific }}" loop_control: label: 'dest: {{ item.name }}' when: - inventory_hostname in groups['mail_server'] - copy_plain_files_postfix_host_specific is defined - copy_plain_files_postfix_host_specific|length > 0 tags: - copy-files - copy-plain-files notify: "Reload postfwd" - name: (copy_files.yml) Copy plain files Postfix Firewall (postfwd) copy: src: '{{ item.src_path }}' dest: '{{ item.dest_path }}' owner: root group: root mode: '0644' loop: "{{ copy_plain_files_postfwd }}" loop_control: label: 'dest: {{ item.name }}' when: - inventory_hostname in groups['mail_server'] - copy_plain_files_postfwd is defined - copy_plain_files_postfwd|length > 0 tags: - copy-files - copy-plain-files notify: "Reload postfwd" - name: (copy_files.yml) Copy host specific plain files Postfix Firewall (postfwd) copy: src: '{{ item.src_path }}' dest: '{{ item.dest_path }}' owner: root group: root mode: '0644' loop: "{{ copy_plain_files_postfwd_host_specific }}" loop_control: label: 'dest: {{ item.name }}' when: - inventory_hostname in groups['mail_server'] - copy_plain_files_postfwd_host_specific is defined - copy_plain_files_postfwd_host_specific|length > 0 tags: - copy-files - copy-plain-files notify: "Reload postfwd" - name: (copy_files.yml) Copy template files template: src: '{{ item.src_path }}' dest: '{{ item.dest_path }}' owner: root group: root mode: '0644' loop: "{{ copy_template_files }}" loop_control: label: 'dest: {{ item.name }}' when: - copy_template_files is defined - copy_template_files|length > 0 tags: - copy-files - copy-template-files # --- # Some final tasks # --- - name: Get checksum oif (possible upodated) file '/etc/postfix/relay_domains' exists stat: path: /etc/postfix/relay_domains register: relay_domains_new - name: (copy_files.yml) Get checksum of '/etc/postfix/relay_domains' set_fact: relay_domains_sha1_new: "{{ relay_domains_new.stat.checksum }}" when: - relay_domains_new.stat.exists - name: (copy_files.yml) Renew database /etc/postfix/relay_domains.db shell: '/usr/sbin/postmap btree:/etc/postfix/relay_domains' when: - relay_domains_actual.stat.exists - relay_domains_new.stat.exists - relay_domains_actual.stat.checksum != relay_domains_new.stat.checksum notify: "Reload postfwd"