cleaned up docker s3 volume restore

pull/20/head
Cian Hatton 3 years ago
parent 41762fb07e
commit 61e3254b4e

@ -1,5 +1,8 @@
--- ---
# defaults file for docker_s3_volume_restore # defaults file for docker_s3_volume_restore
# forces a revert to the volume.
docker_volume_s3_force: false
docker_volume_s3_restores: docker_volume_s3_restores:
- volume_name: "linkding_data" - volume_name: "linkding_data"
s3_key: "linkding_data/linkding_data-2022-09-01T21:32:54Z.tar.gz" s3_key: "linkding_data/linkding_data-2022-09-01T21:32:54Z.tar.gz"

@ -1,7 +1,21 @@
--- ---
# https://docs.ansible.com/ansible/latest/collections/community/docker/docker_container_module.html#ansible-collections-community-docker-docker-container-module # https://docs.ansible.com/ansible/latest/collections/community/docker/docker_container_module.html#ansible-collections-community-docker-docker-container-module
# https://docs.docker.com/storage/volumes/#backup-restore-or-migrate-data-volumes # https://docs.docker.com/storage/volumes/#backup-restore-or-migrate-data-volumes
#
- name: Ensure Volume.
docker_volume:
name: "{{ item.volume_name }}"
state: present
register: volume_out
with_items: "{{ docker_volume_s3_restores }}"
- name: Determine if backup is needed.
set_fact: should_perform_backup="{{ docker_volume_s3_force == true or volume_out.changed == true }}"
- name: End play as no backup is needed.
meta: end_play
when: not should_perform_backup
- name: Download archive from S3 - name: Download archive from S3
amazon.aws.aws_s3: amazon.aws.aws_s3:
bucket: "{{ aws_s3.bucket }}" bucket: "{{ aws_s3.bucket }}"
@ -15,15 +29,6 @@
register: get_out register: get_out
with_items: "{{ docker_volume_s3_restores }}" with_items: "{{ docker_volume_s3_restores }}"
- debug: msg="{{ get_out }}"
- name: Ensure Volume
docker_volume:
name: "{{ item.volume_name }}"
state: present
with_items: "{{ docker_volume_s3_restores }}"
# TODO: skip if the volume was just created
- name: Remove contents of volumes - name: Remove contents of volumes
community.docker.docker_container: community.docker.docker_container:
name: "restore-container-{{ item.volume_name }}-{{ 10 | random }}" name: "restore-container-{{ item.volume_name }}-{{ 10 | random }}"
@ -51,4 +56,3 @@
- "{{ item.volume_name }}:/data" - "{{ item.volume_name }}:/data"
- /tmp:/tmp - /tmp:/tmp
with_items: "{{ docker_volume_s3_restores }}" with_items: "{{ docker_volume_s3_restores }}"

Loading…
Cancel
Save