--- - name: Create dest directories file: path={{local_release_dir}}/{{item.dest|dirname}} state=directory recurse=yes with_items: "{{ downloads }}" run_once: "{{ download_run_once|bool }}" - name: Download items get_url: url: "{{item.url}}" dest: "{{local_release_dir}}/{{item.dest}}" sha256sum: "{{item.sha256 | default(omit)}}" owner: "{{ item.owner|default(omit) }}" mode: "{{ item.mode|default(omit) }}" with_items: "{{ downloads }}" run_once: "{{ download_run_once|bool }}" - name: Extract archives unarchive: src: "{{ local_release_dir }}/{{item.dest}}" dest: "{{ local_release_dir }}/{{item.dest|dirname}}" owner: "{{ item.owner|default(omit) }}" mode: "{{ item.mode|default(omit) }}" copy: no when: "{{item.unarchive is defined and item.unarchive == True}}" with_items: "{{ downloads }}" run_once: "{{ download_run_once|bool }}" - name: Fix permissions file: state: file path: "{{local_release_dir}}/{{item.dest}}" owner: "{{ item.owner|default(omit) }}" mode: "{{ item.mode|default(omit) }}" when: "{{item.unarchive is not defined or item.unarchive == False}}" with_items: "{{ downloads }}" run_once: "{{ download_run_once|bool }}"