From 832f232972c65e7ebed62000aefe825cf8d8ff38 Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Thu, 6 Aug 2026 10:45:03 +0100 Subject: ansible-ise etherpad --- ansible/roles/etherpad/tasks/main.yml | 65 +++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 ansible/roles/etherpad/tasks/main.yml (limited to 'ansible/roles/etherpad/tasks') diff --git a/ansible/roles/etherpad/tasks/main.yml b/ansible/roles/etherpad/tasks/main.yml new file mode 100644 index 0000000..8709049 --- /dev/null +++ b/ansible/roles/etherpad/tasks/main.yml @@ -0,0 +1,65 @@ +- name: Install PNPM and Git + community.general.apk: + name: + - pnpm + - git + +- name: Install tsx globally + ansible.builtin.shell: pnpm install --global tsx + register: pnpm_install_tsx + changed_when: "'Already up to date' not in pnpm_install_tsx.stdout" + environment: + PNPM_HOME: "{{ ansible_facts.env.HOME }}/.local/share/pnpm" + PATH: "{{ ansible_facts.env.PATH }}:{{ ansible_facts.env.HOME }}/.local/share/pnpm" + +- name: Checkout source code for latest etherpad release + register: etherpad_src + ansible.builtin.git: + repo: https://github.com/ether/etherpad.git + dest: "{{ etherpad_src_dir }}" + depth: 1 + version: master + +- name: Install etherpad settings + register: etherpad_settings + ansible.builtin.template: + src: settings.json + dest: "{{ etherpad_src_dir }}/settings.json" + mode: "640" + +- name: Install etherpad dependencies + register: etherpad_dependencies + changed_when: "'Already up to date' not in etherpad_dependencies.stdout" + ansible.builtin.command: + chdir: "{{ etherpad_src_dir }}" + cmd: pnpm install + +- name: Install etherpad service + register: etherpad_service + ansible.builtin.template: + src: openrc/etherpad + dest: /etc/init.d/etherpad + mode: "755" + +- name: Restart etherpad service and configure to start on boot + when: + etherpad_src is changed + or etherpad_service is changed + or etherpad_settings is changed + or etherpad_dependencies is changed + ansible.builtin.service: + name: etherpad + enabled: true + state: restarted + +- name: Start etherpad service and configure to start on boot + when: + not ( + etherpad_src is changed + or etherpad_settings is changed + or etherpad_service is changed + or etherpad_dependencies is changed ) + ansible.builtin.service: + name: etherpad + enabled: true + state: started -- cgit v1.2.3