main.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  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 {{ backup_tmp_dir }} directory
  29. file:
  30. path: "{{ backup_tmp_dir }}"
  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
  54. - name: Create cronjob to auto-delete local backup data
  55. cron:
  56. name: "weekly local backup purges"
  57. weekday: '0'
  58. minute: '10'
  59. hour: '3'
  60. user: root
  61. job: "find {{ backup_tmp_dir }} -type f -mtime +15 -delete"
  62. state: present