--- - name: Install keanu weblite hosts: all become: true tasks: - name: Install Node.js 22 (needed for matrix-js-sdk) shell: | curl -fsSL https://deb.nodesource.com/setup_22.x | bash - apt-get install -y nodejs args: executable: /bin/bash - name: Ensure previous keanu-weblite temp directory is removed file: path: /tmp/keanu-weblite state: absent delegate_to: localhost - name: Clone keanu-weblite repository (dev branch) git: repo: https://gitlab.com/keanuapp/keanuapp-weblite.git dest: /tmp/keanu-weblite version: dev depth: 1 delegate_to: localhost - name: Run npm install shell: npm install args: chdir: /tmp/keanu-weblite delegate_to: localhost - name: Download keanu-weblite config file get_url: url: "{{ config_base_url }}/keanu-weblite-config.json" dest: /tmp/keanu-weblite/src/assets/config.json mode: '0644' delegate_to: localhost - name: Replace REPLACEME with butter_name in config.json replace: path: /tmp/keanu-weblite/src/assets/config.json regexp: 'REPLACEME' replace: "{{ butter_name }}" delegate_to: localhost - name: Run npm build with legacy OpenSSL option shell: | export NODE_OPTIONS=--openssl-legacy-provider npm run build args: chdir: /tmp/keanu-weblite delegate_to: localhost - name: Copy build output to /var/www/html/chat become: true copy: src: /tmp/keanu-weblite/dist/ dest: /var/www/html/chat/ - name: Set permissions for /var/www/html/chat become: true file: path: /var/www/html/chat owner: www-data group: www-data mode: '0755' recurse: yes - name: Restart lighttpd service ansible.builtin.systemd: name: lighttpd state: restarted when: not (is_vmdb2 | bool)