main.yml (1549B)
1 --- 2 - name: Load OS-specific package names 3 ansible.builtin.include_vars: "{{ ansible_facts['os_family'] }}.yml" 4 5 - name: Install rsync and an SSH client 6 ansible.builtin.package: 7 name: "{{ log_sync_packages }}" 8 state: present 9 become: true 10 11 - name: Ensure local bin directory exists 12 ansible.builtin.file: 13 path: "{{ ansible_facts['user_dir'] }}/.local/bin" 14 state: directory 15 mode: "0755" 16 17 - name: Ensure log destination directory exists 18 ansible.builtin.file: 19 path: "{{ log_sync_local_dest }}" 20 state: directory 21 mode: "0700" 22 23 - name: Deploy log pull script 24 ansible.builtin.template: 25 src: pull-logs.sh.j2 26 dest: "{{ ansible_facts['user_dir'] }}/.local/bin/pull-learningunix-logs.sh" 27 mode: "0755" 28 29 - name: Ensure systemd user directory exists 30 ansible.builtin.file: 31 path: "{{ ansible_facts['user_dir'] }}/.config/systemd/user" 32 state: directory 33 mode: "0755" 34 35 - name: Deploy systemd user service 36 ansible.builtin.template: 37 src: log-sync.service.j2 38 dest: "{{ ansible_facts['user_dir'] }}/.config/systemd/user/log-sync.service" 39 mode: "0644" 40 41 - name: Deploy systemd user timer 42 ansible.builtin.template: 43 src: log-sync.timer.j2 44 dest: "{{ ansible_facts['user_dir'] }}/.config/systemd/user/log-sync.timer" 45 mode: "0644" 46 47 - name: Reload systemd user units 48 ansible.builtin.systemd: 49 scope: user 50 daemon_reload: true 51 52 - name: Enable and start the log-sync timer 53 ansible.builtin.systemd: 54 scope: user 55 name: log-sync.timer 56 enabled: true 57 state: started