W3cubDocs

/Ansible

win_unzip - Unzips compressed files and archives on the Windows node

New in version 2.0.

Synopsis

Unzips compressed files and archives. For extracting any compression types other than .zip, the PowerShellCommunityExtensions (PSCX) Module is required. This module (in conjunction with PSCX) has the ability to recursively unzip files within the src zip file provided and also functionality for many other compression types. If the destination directory does not exist, it will be created before unzipping the file. Specifying rm parameter will force removal of the src file after extraction.

Options

parameter required default choices comments
creates
no
If this file or directory exists the specified src will not be extracted.
dest
yes
Destination of zip file (provide absolute path of directory). If it does not exist, the directory will be created.
recurse
no
  • True
  • False
  • True
  • False
Recursively expand zipped files within the src file.
rm
no
  • True
  • False
  • True
  • False
Remove the zip file, after unzipping
src
yes
File to be unzipped (provide absolute path)

Examples

# This unzips a library that was downloaded with win_get_url, and removes the file after extraction
$ ansible -i hosts -m win_unzip -a "src=C:\LibraryToUnzip.zip dest=C:\Lib rm=true" all
# Playbook example

# Simple unzip
---
- name: Unzip a bz2 (BZip) file
  win_unzip:
    src: "C:\Users\Phil\Logs.bz2"
    dest: "C:\Users\Phil\OldLogs"
    creates: "C:\Users\Phil\OldLogs"

# This playbook example unzips a .zip file and recursively decompresses the contained .gz files and removes all unneeded compressed files after completion.
---
- name: Unzip ApplicationLogs.zip and decompress all GZipped log files
  hosts: all
  gather_facts: false
  tasks:
    - name: Recursively decompress GZ files in ApplicationLogs.zip
      win_unzip:
        src: C:\Downloads\ApplicationLogs.zip
        dest: C:\Application\Logs
        recurse: yes
        rm: true

# Install PSCX to use for extracting a gz file
  - name: Grab PSCX msi
    win_get_url:
      url: 'http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=pscx&DownloadId=923562&FileTime=130585918034470000&Build=20959'
      dest: 'C:\pscx.msi'
  - name: Install PSCX
    win_msi:
      path: 'C:\pscx.msi'
  - name: Unzip gz log
    win_unzip:
      src: "C:\Logs\application-error-logs.gz"
      dest: "C:\ExtractedLogs\application-error-logs"

This is an Extras Module

For more information on what this means please read Extras Modules

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, developing_test_pr and Developing Modules.

© 2012–2016 Michael DeHaan
© 2016 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/win_unzip_module.html