# The bulk of this role can likely be replaced with: # https://github.com/CCI-MOC/moc-ansible-mailman # Just a note for possible future improvement. - name: Block for multihost lists block: - name: Set mailman site root fact set_fact: mm_site_root: "/srv/mailman/{{ mm_site_name }}" cacheable: no - name: Check if the site list exists command: list_lists --bare environment: MAILMAN_SITE_DIR: "{{ mm_site_root }}" register: listlists - name: Create the site list if it doesn't exist command: "newlist {% if mailman_test_mode is defined and mailman_test_mode %} -q {% endif %} {{ mm_list_name }} {{ mm_list_admin }} {{ mm_list_password }}" environment: MAILMAN_SITE_DIR: "{{ mm_site_root }}" when: - ( listlists.stdout_lines | intersect([ mm_list_name ]) | length | int ) == 0 when: mm_site_name != "_default" - name: Block for normal lists block: - name: Check if the list exists command: list_lists --bare register: listlists - name: Create the list if it doesn't exist command: "newlist {% if mailman_test_mode is defined and mailman_test_mode %} -q {% endif %} {{ mm_list_name }} {{ mm_list_admin }} {{ mm_list_password }}" when: - ( listlists.stdout_lines | intersect([ mm_list_name ]) | length | int ) == 0 when: mm_site_name == "_default" # TODO we accept a description parameter but don't do anything with it