3. В папке /backups должно храниться 5 копий, самую старую копию надо стереть после удачной заливки
Как пример посмотри
тут
- block:
- name: Determine old directories
set_fact:
old_dirs: "{{ (install_artifacts.files|sort(attribute='mtime', reverse=True))[3:] }}"
- name: Remove old directories
file:
path: "{{ item.path }}"
state: absent
with_items: "{{ old_dirs }}"
when: install_artifacts.matched > 3
Тут правда нужно еще допилить под себя, но в целом направление такое.
Хотя обычно такое bash-скриптами делают.