diff --git a/blender/init.sls b/blender/init.sls index 8c27e8d..cd61d38 100644 --- a/blender/init.sls +++ b/blender/init.sls @@ -1,13 +1,13 @@ {% from "blender/map.jinja" import blender with context %} -# 1. Download tarball to minion's local cache/tmp directory with custom User-Agent +# 1. Download tarball via system curl to preserve User-Agent across redirects blender_download_tarball: - file.managed: - - name: /var/tmp/blender-{{ blender.version }}-linux-x64.tar.xz - - source: {{ blender.download_url }} - - skip_verify: True - - http_headers: - User-Agent: 'Mozilla/5.0 (X11; Linux x86_64; rv:120.0) Gecko/20100101 Firefox/120.0' + cmd.run: + - name: | + curl -sSL -A "Mozilla/5.0 (X11; Linux x86_64; rv:120.0) Gecko/20100101 Firefox/120.0" \ + -o /var/tmp/blender-{{ blender.version }}-linux-x64.tar.xz \ + {{ blender.download_url }} + - creates: /var/tmp/blender-{{ blender.version }}-linux-x64.tar.xz - unless: - test -d {{ blender.archive_dir }} @@ -20,7 +20,7 @@ blender_extract_tarball: - options: '--strip-components=1' - if_missing: {{ blender.archive_dir }}/blender - require: - - file: blender_download_tarball + - cmd: blender_download_tarball # 3. Maintain generic symlink pointing to active version blender_opt_symlink: @@ -56,7 +56,7 @@ blender_desktop_entry: - require: - file: blender_opt_symlink -# 6. Optional: Clean up cached tarball after extraction +# 6. Clean up cached tarball after extraction blender_cleanup_tarball: file.absent: - name: /var/tmp/blender-{{ blender.version }}-linux-x64.tar.xz