--- # tasks file for . ######## # User # ######## - name: Create cat user user: name: "{{ cat_user }}" ############ # Database # ############ - name: Ensure mariadb installation and setup database (see default vars) become: yes become_user: root include_role: name: geerlingguy.mysql ################################## # Download and install leiningen # ################################## - name: Make sure java is installed apt: name: openjdk-8-jdk - name: set user bin dir set_fact: user_bin_dir: /usr/bin - name: Download leiningen get_url: url: https://raw.githubusercontent.com/technomancy/leiningen/stable/bin/lein dest: "{{ user_bin_dir }}" - name: Add executable permission for lein script file: path: "{{ user_bin_dir }}/lein" mode: "a+x" ######################## # Download and compile # ######################## - name: Clone cat repo git: repo: ssh://git@git.zeus.gent:2222/ZeusWPI/cat.git dest: "{{ cat_git_destination }}" accept_hostkey: yes - name: Compile to jar shell: lein uberjar args: chdir: "{{ cat_git_destination }}" ######################## # Setup systemd script # ######################## - name: Copy start script template: src: start.sh dest: "{{ cat_git_destination }}/start.sh" owner: cat group: cat - name: Install service file template: src: cat.service dest: /home/{{ cat_user }}/.config/systemd/user/cat.service owner: cat group: cat #- name: Make the user service execute on system start instead of user login # become: yes # become_user: root # shell: loginctl enable-linger {{ cat_user }} - name: Enable cat service become: yes become_user: "{{ cat_user }}" systemd: scope: user enabled: yes state: started name: cat