main.yml 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. ---
  2. - name: Install necessary packages
  3. package:
  4. name:
  5. - rclone
  6. state: present
  7. - name: Create rclone config directory
  8. file:
  9. path: /root/.config/rclone
  10. state: directory
  11. owner: root
  12. group: root
  13. mode: '0755'
  14. - name: Install rclone.conf
  15. template:
  16. src: rclone.conf.j2
  17. dest: /root/.config/rclone/rclone.conf
  18. owner: root
  19. group: root
  20. mode: '0600'
  21. - name: Create rclone log directory
  22. file:
  23. path: /var/log/rclone
  24. state: directory
  25. owner: root
  26. group: root
  27. mode: '0750'
  28. - name: Create /opt/backups directory
  29. file:
  30. path: /opt/backups
  31. state: directory
  32. owner: root
  33. group: root
  34. mode: '0750'
  35. - name: Copy Backup and Restore scripts
  36. template:
  37. src: "{{ item }}.j2"
  38. dest: /usr/local/bin/{{ item }}
  39. owner: root
  40. group: root
  41. mode: '0755'
  42. loop:
  43. - backup-to-b2.sh
  44. - restore-from-b2.sh
  45. - name: Create cronjob to backup data to b2
  46. cron:
  47. name: "weekly data syncs to backblaze b2"
  48. weekday: '0'
  49. minute: '15'
  50. hour: '3'
  51. user: root
  52. job: "/usr/local/bin/backup-to-b2.sh"
  53. state: present