Files @ b68d19ad38a3
Branch filter:

Location: majic-ansible-roles/roles/mail_forwarder/playbook.yml - annotation

branko
MAR-33: Added initial scaffolding for wsgi_website tests:

- Added Molecule configuration file.
- Implemented test playbook that sets-up three separate instances of WSGI
website in order to test all variations of parameters.
- Added name for the set_fact task.
- Fixed linting errors related to mode that lacks leading zero.
- Added skip_ansible_lint tag for command that creates the Python virtual
environment.
- Added missing become keyword wherever become_user is specified.
- Fixed invalid parameter name for specifying if HTTPS should be enforced or
not.
- Added small initial sample WSGI apps that get deployed.
- Added static/media sample files.
- Added TLS material.
- Added initial dummy test file.
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
f774e938a4ed
f774e938a4ed
f774e938a4ed
f774e938a4ed
f774e938a4ed
01f4b619cfa6
01f4b619cfa6
01f4b619cfa6
01f4b619cfa6
01f4b619cfa6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
36e1c9460cd6
---

- hosts: all
  tasks:

    - name: Update all caches to avoid errors due to missing remote archives
      apt:
        update_cache: yes

- hosts: all
  tasks:

    - name: Set-up /etc/hosts entries
      lineinfile:
        dest: /etc/hosts
        line: "{{ item.key }} {{ item.value }}"
      with_dict:
        10.31.127.10: "mail-server domain1"
        10.31.127.20: "client1"
        10.31.127.30: "parameters-mandatory"
        10.31.127.31: "parameters-optional"

- hosts: client1
  tasks:

    - name: Install SWAKS for testing SMTP capability
      apt:
        name: swaks
        state: installed

    - name: Install tool for testing TCP connectivity
      apt:
        name: hping3
        state: installed

    - name: Deploy CA certificate
      copy:
        src: tests/data/x509/ca.cert.pem
        dest: /usr/local/share/ca-certificates/testca.crt
        owner: root
        group: root
        mode: 0644
      notify:
        - Update CA certificate cache

  handlers:

    - name: Update CA certificate cache
      command: /usr/sbin/update-ca-certificates --fresh

- hosts: mail-server
  tasks:

    - name: Deploy CA certificate
      copy:
        src: tests/data/x509/ca.cert.pem
        dest: /usr/local/share/ca-certificates/testca.crt
        owner: root
        group: root
        mode: 0644
      notify:
        - Update CA certificate cache

    - name: Deploy SMTP private key and certificate
      copy:
        src: "tests/data/x509/{{ item }}"
        dest: "/etc/ssl/{{ item }}"
        owner: root
        group: root
        mode: 0600
      with_items:
        - mail-server_smtp.cert.pem
        - mail-server_smtp.key.pem

    - name: Install Postfix
      apt: name="postfix" state=installed

    - name: Purge Exim configuration
      apt: name="exim4*" state=absent purge=yes

    - name: Deploy Postfix configuration
      copy:
        src: tests/data/main.cf
        dest: /etc/postfix/main.cf
        owner: root
        group: root
        mode: 0644
      notify:
        - Restart Postfix

    - name: Install tool for testing TCP connectivity
      apt:
        name: hping3
        state: installed

    - name: Install SWAKS for testing SMTP capability
      apt:
        name: swaks
        state: installed

  handlers:

    - name: Update CA certificate cache
      command: /usr/sbin/update-ca-certificates --fresh

    - name: Restart Postfix
      service:
        name: postfix
        state: restarted

- hosts: parameters-mandatory
  roles:
    - role: mail_forwarder

      # Global common parameters.
      tls_certificate_dir: tests/data/x509/

- hosts: parameters-optional
  roles:
    - role: mail_forwarder
      local_mail_aliases:
        root: "root testuser"
      smtp_relay_host: mail-server
      smtp_relay_truststore: "{{ lookup('file', 'tests/data/x509/ca.cert.pem') }}"

      # common
      ca_certificates:
        testca: "{{ lookup('file', 'tests/data/x509/ca.cert.pem') }}"

- hosts: parameters-optional
  tasks:

    - name: Create additional group for testing local aliases
      group:
        name: testuser

    - name: Create additional user for testing local aliases
      user:
        name: testuser
        group: testuser