---
- name: Ensure Apache2 and modules are installed and up to date
  apt:
    name:
      - apache2
    state: present

- name: Ensure necessary modules are enabled
  apache2_module:
    name: "{{ item }}"
    state: present
  with_items:
    - rewrite
    - ssl
    - headers
    - proxy_http
    - proxy_wstunnel

- name: Create configuration for GNU-TP header
  ansible.builtin.copy:
    src: files/gnu-tp.conf
    dest: /etc/apache2/conf-available/gnu-tp.conf
    mode: "0644"
    owner: root
    group: root
  notify: restart apache2

- name: Add symlink to enable configuration
  ansible.builtin.file:
    src: ../conf-available/gnu-tp.conf
    dest: /etc/apache2/conf-enabled/gnu-tp.conf
    state: link
    owner: root
    group: root
  notify: restart apache2