# Ansible automate backup restoration

**URL:** <https://forum.ansible.com/t/ansible-automate-backup-restoration/28972>\
**Category:** Ansible Project\
**Created:** [November 8, 2018, 8:08am UTC](https://forum.ansible.com/t/ansible-automate-backup-restoration/28972 "2018-11-08T08:08:31Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![tonitsh](https://avatars.discourse-cdn.com/v4/letter/t/977dab/32.png) [@tonitsh](https://forum.ansible.com/u/tonitsh)\
**Post date:** [November 8, 2018, 8:08am UTC](https://forum.ansible.com/t/ansible-automate-backup-restoration/28972/1 "2018-11-08T08:08:31Z")

</div>

Hi. Im having trouble in my backup test playbook.

backed up files are is Amazon s3 bucket.  
The problem is - we have many versions there. i need to **limit rsync to latest version without providing it manually** , or to prompt me for choice.  
At the moment im stuck. **I fail to find a module which could help me.**

- name: List s3 objects  
aws\_s3:  
bucket: “bucket\_name”  
prefix: “application\_folder”  
max\_keys: 3 \*(application has 3 files in it so im trying to limit to the last 3 - unnsuccesfully though. )  
mode: list  
register: s3objects  
become: yes  
become\_user: username

- debug: var=s3objects

- name: write to file  
copy:  
content: “{{ s3objects }}”  
dest: /home/username/application\_folder\_version  
mode: 0644  
force: yes  
with\_items: s3objects  
become: yes  
become\_user: username

outcome:

“application/2018-08-21/1.78/application.properties”,  
“application/2018-08-21/1.78/run.sh”,  
“application/2018-08-21/1.78/application.jar”,  
“application/2018-08-22/1.79/application.properties”,  
“application/2018-08-22/1.79/run.sh”,  
“application/2018-08-22/1.79/application.jar”,  
“application/2018-08-30/1.80/application.properties”,  
“application/2018-08-30/1.80/run.sh”,  
“application/2018-08-30/1.80/application.jar”,  
“application/2018-09-06/1.81/application.properties”,  
“application/2018-09-06/1.81/run.sh”,  
“application/2018-09-06/1.81/application.jar”,  
“application/2018-09-07/1.81/application.properties”,  
“application/2018-09-07/1.81/run.sh”,  
“application/2018-09-07/1.81/application.jar”,  
“application/2018-09-17/1.82/application.properties”,  
“application/2018-09-17/1.82/run.sh”,  
“application/2018-09-17/1.82/application.jar”,  
“application/2018-10-11/1.83/application.properties”,  
“application/2018-10-11/1.83/run.sh”,  
“application/2018-10-11/1.83/application.jar”,  
“application/2018-10-16/1.84/application.properties”,  
“application/2018-10-16/1.84/run.sh”,  
“application/2018-10-16/1.84/application.jar”,  
“application/2018-10-18/1.85/application.properties”,  
“application/2018-10-18/1.85/run.sh”,  
“application/2018-10-18/1.85/application.jar”,  
“application/2018-10-25/1.86/application.properties”,  
“application/2018-10-25/1.86/run.sh”,  
“application/2018-10-25/1.86/application.jar”,  
“application/2018-10-31/1.87/application.properties”,  
“application/2018-10-31/1.87/run.sh”,  
“application/2018-10-31/1.87/application.jar”,  
“application/2018-11-07/1.88/application.properties”,  
“application/2018-11-07/1.88/run.sh”,  
“application/2018-11-07/1.88/application.jar”

I could read last 3 lines from a file and take them as variables, but i don´t see how to do it with ansible.

Thanks for reading.

---

<div class="post-metadata">

**Author:** ![Dick\_Visser](https://avatars.discourse-cdn.com/v4/letter/d/d9b06d/32.png) [@Dick\_Visser](https://forum.ansible.com/u/Dick_Visser)\
**Post date:** [November 8, 2018, 8:23am UTC](https://forum.ansible.com/t/ansible-automate-backup-restoration/28972/2 "2018-11-08T08:23:11Z")

</div>

Maybe restructure the tasks and take a single file into account, so  
that you can simple sort and pick the last one.  
Then iterate over each of the 3 files.

Dick

---

<div class="post-metadata">

**Author:** ![tonitsh](https://avatars.discourse-cdn.com/v4/letter/t/977dab/32.png) [@tonitsh](https://forum.ansible.com/u/tonitsh)\
**Post date:** [November 8, 2018, 8:49am UTC](https://forum.ansible.com/t/ansible-automate-backup-restoration/28972/3 "2018-11-08T08:49:42Z")

</div>

> im still in trouble with even a single file, because of the directory structure. The folder with a date is generated automatically and i wont know it in advance.

meaning

“application/2018-10-31/1.87/application.properties”,  
“application/2018-10-31/1.87/run.sh”,  
“application/2018-10-31/1.87/application.jar”,  
“application/2018-11-07/1.88/application.properties”,  
“application/2018-11-07/1.88/run.sh”,  
“application/2018-11-07/1.88/application.jar”  
application/Foldernamechanges/versionnamechanges/static.jar

---

<div class="post-metadata">

**Author:** ![Kai\_Stian\_Olstad](https://avatars.discourse-cdn.com/v4/letter/k/e19adc/32.png) [@Kai\_Stian\_Olstad](https://forum.ansible.com/u/Kai_Stian_Olstad)\
**Post date:** [November 9, 2018, 5:15am UTC](https://forum.ansible.com/t/ansible-automate-backup-restoration/28972/4 "2018-11-09T05:15:55Z")

</div>

You have left out a lot of useful information, I have never user aws\_s3 so I don't know it's structure.  
But to get the 3 last elements in a list it's just \<some list variable\>[-3]
