|
45 | 45 | file: |
46 | 46 | path: "{{ playbook_dir }}/backup.lock" |
47 | 47 | state: touch |
48 | | - owner: "{{ user }}" |
49 | | - group: "{{ user }}" |
| 48 | + owner: "{{ user.name }}" |
| 49 | + group: "{{ user.name }}" |
50 | 50 | mode: 0775 |
51 | 51 |
|
52 | 52 | - name: Check if previous backup exists locally |
|
67 | 67 | - name: "Moving '{{ local.destination }}' to '{{ local.destination }}.old'" |
68 | 68 | shell: "mv '{{ local.destination }}' '{{ local.destination }}.old'" |
69 | 69 | become: yes |
70 | | - become_user: "{{ user }}" |
| 70 | + become_user: "{{ user.name }}" |
71 | 71 | when: dir_files.matched|int != 0 |
72 | 72 |
|
73 | 73 | - name: "Create backup folders." |
74 | | - file: "path={{ item }} state=directory mode=0775 owner={{ user }} group={{ user }} recurse=yes" |
| 74 | + file: "path={{ item }} state=directory mode=0775 owner={{ user.name }} group={{ user.name }} recurse=yes" |
75 | 75 | with_items: |
76 | | - - "/home/{{ user }}/logs" |
77 | | - - "/home/{{ user }}/logs/backup" |
| 76 | + - "/home/{{ user.name }}/logs" |
| 77 | + - "/home/{{ user.name }}/logs/backup" |
78 | 78 | - "{{ local.destination }}" |
79 | 79 | - "{{ local.destination }}/opt" |
80 | 80 | - "/opt/systemd-backup" |
|
85 | 85 | copy: |
86 | 86 | src: "{{ item }}" |
87 | 87 | dest: "{{ local.destination }}" |
88 | | - owner: "{{ user }}" |
89 | | - group: "{{ user }}" |
| 88 | + owner: "{{ user.name }}" |
| 89 | + group: "{{ user.name }}" |
90 | 90 | mode: 0775 |
91 | 91 | force: yes |
92 | 92 | with_items: |
|
95 | 95 | - "{{ playbook_dir }}/settings.yml" |
96 | 96 | - "{{ playbook_dir }}/adv_settings.yml" |
97 | 97 | - "{{ playbook_dir }}/backup_config.yml" |
98 | | - - "/home/{{ user }}/.config/rclone/rclone.conf" |
| 98 | + - "/home/{{ user.name }}/.config/rclone/rclone.conf" |
99 | 99 | ignore_errors: yes |
100 | 100 |
|
101 | 101 | # Backup the excludes list if it exists |
|
108 | 108 | copy: |
109 | 109 | src: "{{ playbook_dir }}/backup_excludes_list.txt" |
110 | 110 | dest: "{{ local.destination }}" |
111 | | - owner: "{{ user }}" |
112 | | - group: "{{ user }}" |
| 111 | + owner: "{{ user.name }}" |
| 112 | + group: "{{ user.name }}" |
113 | 113 | mode: 0775 |
114 | 114 | force: yes |
115 | 115 | when: (backup_excludes_list.stat.exists) |
|
151 | 151 | ignore_errors: yes |
152 | 152 |
|
153 | 153 | - name: "Reset permissions of folders" |
154 | | - file: "path={{ item }} state=directory mode=0775 owner={{ user }} group={{ user }} recurse=yes" |
| 154 | + file: "path={{ item }} state=directory mode=0775 owner={{ user.name }} group={{ user.name }} recurse=yes" |
155 | 155 | with_items: |
156 | 156 | - "/opt/systemd-backup" |
157 | 157 | - "/opt/crontab-backup" |
|
345 | 345 | path: "{{ local.destination }}.old" |
346 | 346 | state: absent |
347 | 347 | become: yes |
348 | | - become_user: "{{ user }}" |
| 348 | + become_user: "{{ user.name }}" |
349 | 349 | when: (dir_files2.matched|int != 0) |
350 | 350 |
|
351 | 351 | - name: "Get size of '{{ local.destination }}'" |
|
403 | 403 | timeout: 10 |
404 | 404 |
|
405 | 405 | - name: "Reset folder ownership of '{{ local.destination }}/'" |
406 | | - shell: "chown -R {{ user }}:{{ user }} {{ local.destination }}/" |
| 406 | + shell: "chown -R {{ user.name }}:{{ user.name }} {{ local.destination }}/" |
407 | 407 | args: |
408 | 408 | warn: no |
409 | 409 |
|
410 | 410 | # Reset mod dates to avoid conflicts during rclone backup. Ansible module doesn't touch folder contents via wildcard. |
411 | 411 | - name: "Reset permissions and mod dates to files in '{{ local.destination }}/'" |
412 | 412 | shell: find '{{ local.destination }}' -type f -exec touch {} + |
413 | 413 | become: yes |
414 | | - become_user: "{{ user }}" |
| 414 | + become_user: "{{ user.name }}" |
415 | 415 | args: |
416 | 416 | executable: /bin/bash |
417 | 417 | warn: no |
|
424 | 424 | --user-agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36' \ |
425 | 425 | | sed -e 's/^[ \t]*//' | cut -d ' ' -f 2,3 | cut -d '.' -f 1 | sed s/' '/_/g | sed s/':'/./g |
426 | 426 | become: yes |
427 | | - become_user: "{{ user }}" |
| 427 | + become_user: "{{ user.name }}" |
428 | 428 | register: rclone_timestamp |
429 | 429 | ignore_errors: yes |
430 | 430 | when: (rclone.enable) |
|
437 | 437 | '{{ rclone.destination }}/{{ item }}' '{{ rclone.destination }}/archived/{{ (rclone_timestamp.stdout) if (rclone_timestamp is defined) else 'old' }}/{{ item }}' \ |
438 | 438 | 2>/dev/null |
439 | 439 | become: yes |
440 | | - become_user: "{{ user }}" |
| 440 | + become_user: "{{ user.name }}" |
441 | 441 | register: rclone_move |
442 | 442 | failed_when: rclone_move.rc > 3 |
443 | 443 | ignore_errors: yes |
|
465 | 465 | --drive-chunk-size=128M \ |
466 | 466 | --stats=30s \ |
467 | 467 | -v \ |
468 | | - --log-file='/home/{{ user }}/logs/backup/cloudbox_backup_rclone.log' \ |
| 468 | + --log-file='/home/{{ user.name }}/logs/backup/cloudbox_backup_rclone.log' \ |
469 | 469 | '{{ local.destination }}' '{{ rclone.destination }}' |
470 | 470 | become: yes |
471 | | - become_user: "{{ user }}" |
| 471 | + become_user: "{{ user.name }}" |
472 | 472 | when: (rclone.enable) |
473 | 473 |
|
474 | 474 | - name: "Pushover Message: Rclone uploaded backup to '{{ rclone.destination }}'" |
|
485 | 485 | set_remote_user: yes |
486 | 486 | compress: no |
487 | 487 | become: yes |
488 | | - become_user: "{{ user }}" |
| 488 | + become_user: "{{ user.name }}" |
489 | 489 | when: (rsync.enable) |
490 | 490 |
|
491 | 491 | - name: "Pushover Message: Rsync uploaded backup to '{{ rsync.destination }}'" |
|
535 | 535 | when: (use_snapshot) and (snapshot_type == 'btrfs') |
536 | 536 |
|
537 | 537 | - name: "Reset folder ownership of '{{ local.destination }}/'" |
538 | | - shell: "chown -R {{ user }}:{{ user }} {{ local.destination }}/" |
| 538 | + shell: "chown -R {{ user.name }}:{{ user.name }} {{ local.destination }}/" |
539 | 539 | args: |
540 | 540 | warn: no |
541 | 541 |
|
|
588 | 588 | state: absent |
589 | 589 |
|
590 | 590 | - name: "Reset logs folder ownership." |
591 | | - shell: "chown -R {{ user }}:{{ user }} '/home/{{ user }}/logs/'" |
| 591 | + shell: "chown -R {{ user.name }}:{{ user.name }} '/home/{{ user.name }}/logs/'" |
592 | 592 | args: |
593 | 593 | warn: no |
0 commit comments