- name: Check that a username and password is supplied assert: that: - (relay_user is defined) and (relay_user is not none) - (relay_password is defined) and (relay_password is not none) fail_msg: "'relay_user' and 'relay_password' must be set" success_msg: "username and password for relay is set" - name: Check that we have supplied a recipient address assert: that: - (external_email_address is defined) and (external_email_address is not none) fail_msg: "'external_email_address' must be set. Local mail will be forwarded to this address" success_msg: "Recipient address is set" - name: Update the cache if we are on a Debian based system apt: update_cache: yes cache_valid_time: 3600 when: ansible_os_family == 'Debian' - name: Install Postfix and s-nail package: state: present name: "{{ item }}" with_items: - postfix - s-nail notify: Activate and restart Postfix - name: Configure Postfix template: src: main.cf.j2 dest: /etc/postfix/main.cf notify: Activate and restart Postfix - name: Copy Postfix authentication template: src: sasl_passwd.j2 dest: /etc/postfix/sasl_passwd mode: 0600 notify: Generate SASL - name: Copy alisases template: src: aliases.j2 dest: /etc/aliases notify: Generate aliases - name: Copy sender_canonical template: src: sender_canonical.j2 dest: /etc/postfix/sender_canonical notify: Generate sender_canonical