- hosts: all tasks: - name: install dependencies for alpine package: name: sudo,musl-dev,libressl-dev,make,automake,gcc,curl,git,byacc,flex,libtool,sqlite-dev,autoconf,util-linux state: present when: ansible_distribution == 'Alpine' - name: install dependencies for debian package: name: sudo,buildessential,autotools-dev,automake,cmake,make,libtool,byacc,flex,openssl-dev,sqlite3 state: present when: ansible_distribution == 'Debian' - name: create ircd user user: name: ircd - name: download solanum git: repo: 'https://github.com/vulpineawoo/solanum' dest: /home/ircd/solanum become: yes become_user: ircd - name: check if autogen needed stat: path: /home/ircd/solanum/configure register: alreadyautogen - name: autogen command: ./autogen.sh args: chdir: /home/ircd/solanum become: yes become_user: ircd when: not alreadyautogen.stat.exists - name: configure command: ./configure args: chdir: /home/ircd/solanum become: yes become_user: ircd when: not alreadyautogen.stat.exists - name: make make: chdir: /home/ircd/solanum become: yes become_user: ircd - name: make install make: chdir: /home/ircd/solanum target: install become: yes become_user: ircd - name: check for ssl cert stat: path: /home/ircd/ircd/etc/ssl.pem register: ssl_exists - name: get ssl fingerprint command: /home/ircd/ircd/bin/solanum-mkfingerprint sha512 /home/ircd/ircd/etc/ssl.pem register: ssl_fingerprint when: ssl_exists.stat.exists - name: create ircd.conf template: src: ircd.j2 dest: /home/ircd/ircd/etc/ircd.conf - name: create ircd.motd template: src: motd.j2 dest: /home/ircd/ircd/etc/ircd.motd - name: create openrc service template: src: openrc.j2 dest: /etc/init.d/solanum mode: 0755 when: ansible_distribution == 'Alpine' - name: create systemd service template: src: systemd.j2 dest: /etc/systemd/system/solnum.service mode: 0755 when: ansible_distribution == 'Debian' - name: enable service service: name: solanum state: reloaded enabled: yes