-
Feature Request
-
Resolution: Unresolved
-
Normal
-
None
-
2.5
-
False
-
-
False
1. What is the nature and description of the request?
The current restore process uses the copy module to transfer backup tarballs to the server. This approach is inefficient for large files and can lead to failed transfers, including MemoryError exceptions and failed scp/sftp attempts. The request is to improve this process by replacing the copy module with the synchronize module (which uses rsync), allowing for more efficient and reliable tarball transfers.
2. Why does the customer need this? (List the business requirements here)
- Improved reliability: Avoids failures from scp/sftp mechanisms and MemoryError exceptions.
- Faster transfers: synchronize (based on rsync) is optimized for large file transfers.
- Better scalability: More suitable for environments with large backup tarballs.
3. How would you like to achieve this? (List the functional requirements here)
Update the following task in:
collections/ansible_collections/ansible/automation_platform_installer/roles/restore/tasks/init.yml
- name: Upload the backup tarball to the server. copy: dest: '{{ backup_dir.rstrip("/") }}/restore/{{ restore_file_prefix }}.tar.gz' mode: 0664 owner: root src: '{{ restore_backup_file }}'
With:
- name: Upload the backup tarball to the server efficiently synchronize: src: "{{ restore_backup_file }}" dest: "{{ backup_dir.rstrip('/') }}/restore/{{ restore_file_prefix }}.tar.gz" - name: Set permissions and ownership on the backup tarball file: path: "{{ backup_dir.rstrip('/') }}/restore/{{ restore_file_prefix }}.tar.gz" owner: root mode: '0664'