You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

49 lines
1.5 KiB

  1. ---
  2. - name: file_download | Downloading...
  3. debug:
  4. msg:
  5. - "URL: {{ download.url }}"
  6. - "Dest: {{ download.dest }}"
  7. - name: file_download | Create dest directory
  8. file:
  9. path: "{{download.dest|dirname}}"
  10. state: directory
  11. recurse: yes
  12. when:
  13. - download.enabled
  14. - download.file
  15. - group_names | intersect(download.groups) | length
  16. - name: file_download | Download item
  17. get_url:
  18. url: "{{download.url}}"
  19. dest: "{{download.dest}}"
  20. sha256sum: "{{download.sha256 | default(omit)}}"
  21. owner: "{{ download.owner|default(omit) }}"
  22. mode: "{{ download.mode|default(omit) }}"
  23. validate_certs: "{{ download_validate_certs }}"
  24. url_username: "{{ download.username|default(omit) }}"
  25. url_password: "{{ download.password|default(omit) }}"
  26. force_basic_auth: "{{ download.force_basic_auth|default(omit) }}"
  27. register: get_url_result
  28. until: "'OK' in get_url_result.msg or 'file already exists' in get_url_result.msg"
  29. retries: 4
  30. delay: "{{ retry_stagger | default(5) }}"
  31. when:
  32. - download.enabled
  33. - download.file
  34. - group_names | intersect(download.groups) | length
  35. - name: file_download | Extract archives
  36. unarchive:
  37. src: "{{download.dest}}"
  38. dest: "{{download.dest|dirname}}"
  39. owner: "{{ download.owner|default(omit) }}"
  40. mode: "{{ download.mode|default(omit) }}"
  41. copy: no
  42. when:
  43. - download.enabled
  44. - download.file
  45. - download.unarchive|default(False)
  46. - group_names | intersect(download.groups) | length