Files @ 14eb78a4f466
Branch filter:

Location: majic-ansible-roles/roles/xmpp_server/tasks/main.yml - annotation

branko
MAR-129: Updated php_website role for Ansible 2.5.x and new Molecule:

- Include global linting configuration file in tests.
- Fixed linting issues.
- Fix deprecation warnings from Ansible (for apt module and
state=installed).
- Updated how the hosts are being referenced within tests.
2e1ff733350e
2e1ff733350e
2e1ff733350e
e4a0f78340ef
e4a0f78340ef
2e1ff733350e
2e1ff733350e
2e1ff733350e
2e1ff733350e
2e1ff733350e
2e1ff733350e
2e1ff733350e
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
b0e7faa211ae
b0e7faa211ae
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
2e1ff733350e
0ad9410c243a
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
0ad9410c243a
0ad9410c243a
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
0ad9410c243a
284ed92d40bb
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
284ed92d40bb
96e9f230a669
da031f975c67
da031f975c67
da031f975c67
da031f975c67
da031f975c67
e4a0f78340ef
0ad9410c243a
0ad9410c243a
96e9f230a669
96e9f230a669
da031f975c67
da031f975c67
da031f975c67
da031f975c67
da031f975c67
e4a0f78340ef
0ad9410c243a
0ad9410c243a
2e1ff733350e
aa2802e42d9d
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
aa2802e42d9d
2e1ff733350e
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
2e1ff733350e
2e1ff733350e
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
2e1ff733350e
2e1ff733350e
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
2e1ff733350e
2e1ff733350e
da031f975c67
e4a0f78340ef
e4a0f78340ef
da031f975c67
da031f975c67
da031f975c67
2e1ff733350e
2e1ff733350e
2e1ff733350e
a561d73e3242
e4a0f78340ef
a561d73e3242
a561d73e3242
a561d73e3242
2e1ff733350e
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
eb9a1b525c77
eb9a1b525c77
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
e4a0f78340ef
eb9a1b525c77
dbc3381e1ff3
7387caca37f3
7387caca37f3
7387caca37f3
7387caca37f3
7387caca37f3
7387caca37f3
---

- name: Install Python apt bindings
  apt:
    name: python-apt

- name: Add Prosody repository apt key
  apt_key:
    data: "{{ lookup('file', 'prosody-debian-packages.gpg') }}"
    state: present

- name: Add Prosody repository
  apt_repository:
    repo: "deb http://packages.prosody.im/debian jessie main"
    state: present

- name: Install Lua Sec library (needed for TLS)
  apt:
    name: lua-sec
    state: installed

- name: Install Lua LDAP library
  apt:
    name: lua-ldap
    state: installed

- name: Install Prosody
  apt:
    name: prosody
    state: installed

- name: Allow Prosody user to traverse the directory with TLS private keys
  user:
    name: prosody
    append: yes
    groups: ssl-cert

- name: Deploy XMPP TLS private key
  copy:
    dest: "/etc/ssl/private/{{ ansible_fqdn }}_xmpp.key"
    content: "{{ xmpp_tls_key }}"
    owner: root
    group: prosody
    mode: 0640
  notify:
    - Restart Prosody

- name: Deploy XMPP TLS certificate
  copy:
    dest: "/etc/ssl/certs/{{ ansible_fqdn }}_xmpp.pem"
    content: "{{ xmpp_tls_certificate }}"
    owner: root
    group: root
    mode: 0644
  notify:
    - Restart Prosody

- name: Deploy configuration file for checking certificate validity via cron
  copy:
    content: "/etc/ssl/certs/{{ ansible_fqdn }}_xmpp.pem"
    dest: "/etc/check_certificate/{{ ansible_fqdn }}_xmpp.conf"
    owner: root
    group: root
    mode: 0644

- name: Set-up directory for storing additional Prosody modules
  file:
    path: "/usr/local/lib/prosody/modules/"
    state: directory
    owner: root
    group: root
    mode: 0755

- name: Deploy the Prosody mod_auth_ldap module
  get_url:
    url: "https://hg.prosody.im/prosody-modules/raw-file/tip/mod_auth_ldap/mod_auth_ldap.lua"
    dest: "/usr/local/lib/prosody/modules/mod_auth_ldap.lua"

- name: Set-up file permissions for the Prosody mod_auth_ldap module
  file:
    dest: "/usr/local/lib/prosody/modules/mod_auth_ldap.lua"
    owner: root
    group: root
    mode: 0644

- name: Deploy Prosody configuration file
  template:
    src: "prosody.cfg.lua.j2"
    dest: "/etc/prosody/prosody.cfg.lua"
    owner: root
    group: prosody
    mode: 0640
  notify:
    - Restart Prosody

- name: Enable Prosody service on boot (workaround for systemctl broken handling of SysV)
  command: "rcconf -on prosody"
  register: result
  changed_when: result.stderr == ""

- name: Enable and start Prosody service
  service:
    name: prosody
    state: started

- name: Deploy firewall configuration for XMPP server
  copy:
    src: "ferm_xmpp.conf"
    dest: "/etc/ferm/conf.d/30-xmpp.conf"
    owner: root
    group: root
    mode: 0640
  notify:
    - Restart ferm

- name: Explicitly run all handlers
  include: ../handlers/main.yml
  when: "handlers | default(False) | bool() == True"
  tags:
    - handlers