From b144e9a89249cc565cd0cf4941c55e4fabe7f8e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Flor=C3=A9al=20Toumikian?= Date: Sun, 19 May 2024 11:02:30 +0200 Subject: [PATCH] Added: Playbook for chat server --- playbooks/02-xmpp-server.yaml | 74 +++++++++++++++++++ .../tasks/ns/files/db.trans13nrv.eu.org.zone | 15 ++-- playbooks/vars.yml | 8 +- 3 files changed, 87 insertions(+), 10 deletions(-) create mode 100644 playbooks/02-xmpp-server.yaml diff --git a/playbooks/02-xmpp-server.yaml b/playbooks/02-xmpp-server.yaml new file mode 100644 index 0000000..20c4ac4 --- /dev/null +++ b/playbooks/02-xmpp-server.yaml @@ -0,0 +1,74 @@ +- name: Configuration of jabber server + hosts: chatservers + + tasks: + - name: Use variables + ansible.builtin.include_vars: vars.yml + + - name: Configure ejabber apt sources + ansible.builtin.blockinfile: + path: /etc/apt/sources.list.d/process-one-stable.sources + create: true + block: | + Enabled: yes + Types: deb + URIs: https://repo.process-one.net/deb + Suites: stable + Components: main + Architectures: amd64 + Signed-By: /etc/apt/keyrings/ejabberd.gpg + + - name: create keyrings folder + ansible.builtin.file: + path: /etc/apt/keyrings + owner: root + state: directory + + - name: Adding process-one (ejabberd) gpg key to apt keyring + ansible.builtin.get_url: + url: https://repo.process-one.net/ejabberd.gpg + dest: /etc/apt/keyrings/ejabberd.gpg + + - name: Installing required packages + ansible.builtin.package: + name: + - composer + - php-fpm + - php-curl + - php-mbstring + - php-imagick + - php-gd + - php-pgsql + - php-xml + - postgresql + - nginx + - ejabberd + - git + state: present + + - name: Cloning Movim + ansible.builtin.git: + repo: https://github.com/movim/movim.git + dest: "{{ movim.path }}" + version: "{{ movim.version }}" + + - name: Setting Mode and Ownershp + ansible.builtin.file: + path: "{{ movim.path }}" + state: directory + owner: "{{ www.user }}" + group: "{{ www.group }}" + recurse: true + mode: "755" + + - name: Installing Movim dependanciens + ansible.builtin.composer: + working_dir: "{{ movim.path }}" + command: install + become: true + become_user: "{{ www.user }}" + + - name: Cleaning up + ansible.builtin.package: + name: git + state: absent diff --git a/playbooks/tasks/ns/files/db.trans13nrv.eu.org.zone b/playbooks/tasks/ns/files/db.trans13nrv.eu.org.zone index 1f0b904..2507ead 100644 --- a/playbooks/tasks/ns/files/db.trans13nrv.eu.org.zone +++ b/playbooks/tasks/ns/files/db.trans13nrv.eu.org.zone @@ -1,7 +1,7 @@ $ORIGIN trans13nrv.eu.org. $TTL 300s @ SOA ns1 postmaster ( - 2024051400 ; Serial + 2024051700 ; Serial 8h ; Refresh 30m ; Retry 1w ; Expire @@ -17,15 +17,12 @@ ns1 A 137.74.82.130 ;;; XMPP ;;; ; server IP / name -;_jabber A 0.0.0.1 -;xmpp CNAME _jabber +jabber A 137.74.82.131 +xmpp CNAME jabber ; ports -;_xmpp-server._tcp IN SRV 0 0 5269 _jabber -;_xmpp-client._tcp IN SRV 0 0 5222 _jabber - -; multi-user-chat -;muc CNAME _jabber +_xmpp-server._tcp IN SRV 0 0 5269 jabber +_xmpp-client._tcp IN SRV 0 0 5222 jabber ; web UI -;chat CNAME _jabber \ No newline at end of file +chat CNAME jabber diff --git a/playbooks/vars.yml b/playbooks/vars.yml index 196086c..8a32fb4 100644 --- a/playbooks/vars.yml +++ b/playbooks/vars.yml @@ -9,4 +9,10 @@ dns: - zone: domain_name: trans13nrv.eu.org root: - user: root \ No newline at end of file + user: root +www: + user: www-data + group: www-data +movim: + version: v0.24.1 + path: /var/www/chat.trans13nrv.eu.org \ No newline at end of file