--- - name: Install Belenios dependencies from APT ansible.builtin.apt: update_cache: true install_recommends: false name: - bubblewrap - build-essential - ca-certificates - cracklib-runtime - jq - libgd-securityimage-perl - libgmp-dev - libncurses-dev - libpcre3-dev - libssl-dev - libsqlite3-dev - m4 - pkg-config - unzip - wget - zip - zlib1g-dev # OCamL build dependencies - dune - eliom - libatdgen-ocaml-dev - libcalendar-ocaml-dev - libcmdliner-ocaml-dev - libcryptokit-ocaml-dev - libcsv-ocaml-dev - libgettext-ocaml-dev - libzarith-ocaml-dev # Web server dependencies - ocsigenserver register: apt_result retries: 3 until: apt_result is succeeded - name: Start ocsigenserver at boot ansible.builtin.lineinfile: path: /etc/default/ocsigenserver regexp: ^LAUNCH_AT_STARTUP= line: LAUNCH_AT_STARTUP=true notify: Restart ocsigenserver - name: Clone belenios into /var/local/belenios ansible.builtin.git: repo: https://gitlab.inria.fr/belenios/belenios.git dest: /var/local/belenios version: "1.15" force: true notify: Make belenios project register: git_result - name: Create belenios data directories ansible.builtin.file: path: "{{ item }}" owner: ocsigen group: ocsigen mode: 0755 state: directory loop: - /etc/ocsigenserver/conf.d - /var/lib/belenios - /var/lib/belenios/data - /var/lib/belenios/upload - /var/lib/belenios/spool - /var/log/belenios - name: Link belenios directories into proper locations ansible.builtin.file: src: "{{ item.src }}" path: "{{ item.path }}" owner: root group: root mode: 0755 state: link loop: - src: /var/local/belenios/_run/usr/bin/belenios-tool path: /usr/bin/belenios-tool - src: /var/local/belenios/_run/usr/lib/belenios path: /usr/lib/ocaml/belenios - src: /var/local/belenios/_run/usr/lib/belenios-platform path: /usr/lib/ocaml/belenios-platform - src: /var/local/belenios/_run/usr/lib/belenios-platform-js path: /usr/lib/ocaml/belenios-platform-js - src: /var/local/belenios/_run/usr/lib/belenios-platform-native path: /usr/lib/ocaml/belenios-platform-native - src: /var/local/belenios/_run/usr/lib/belenios-server path: /usr/lib/ocaml/belenios-server - src: /var/local/belenios/_run/usr/lib/belenios-tool path: /usr/lib/ocaml/belenios-tool - src: /var/local/belenios/_run/usr/share/belenios-server path: /usr/share/belenios-server - name: Deploy ocsigenserver configuration ansible.builtin.template: src: ocsigenserver/conf.d/belenios.conf.j2 dest: /etc/ocsigenserver/conf.d/belenios.conf owner: root group: root mode: 0644 notify: Restart ocsigenserver