Using the VSTS Zip and Unzip task

Zip and Unzip directories in VSTS builds and releases

The VSTS Directory Zip and Unzip task enables you to zip multiple files and unzip zip files. The task can be installed from the Marketplace.

Zip task

In the zip task you are able to zip multiple folders to a zip files. The task creates zip archives with the name of the folder:

src/project/Modules/Common => src/project/Modules/

In your next build step you can publish or copy the zip file to your destination location.

Common use of zip task

Unzip task

In the unzip task you are able to unzip zip files. In the ‘Zip files to unzip’ textbox you can specify multiple files to unzip. When the ‘Unzip to path’ is empty, the files will be unziped into a sub directory with the same name as the zip file.

src/project/Modules/ => src/project/Modules/Common

When you specify the ‘Unzip to path’ textbox, the zip files will be unzipped into that directory.

Common use of unzip task

Add path variables

The default relative path is the folder where all sources for the build definition are synced. You can go thought other directories/files on the build agent by using full paths or variables in the path. All input boxes for paths do accept variables. For example the source directory is: $(Agent.BuildDirectory)\s. Or use your own variables for the build/release pipeline in the paths.

The use of variables

 Path variables in VSTS

Some useful variables:

Variable Description
 $(System.DefaultWorkingDirectory)  Default working directory for build or release task.
 $(Build.SourcesDirectory)  Default working directory for build task.
 $(Release.ArtifactsDirectory) Default working directory for release task.
 $(Agent.RootDirectory)\_work  The working directory for this agent.
$(Agent.RootDirectory)\TestResults  The local path on the agent where the test results are created.
 $(Agent.BuildDirectory)\s  The folder where all sources for the build definition are synced to.
 $(Agent.BuildDirectory)\b  The local path on the agent you can use as a folder for compiled binaries.
 $(Agent.BuildDirectory)\a  The local path on the agent where any artifacts are copied to before being pushed to their destination, it will be cleaned up after the files have been copied to the destination.
  $(Agent.BuildDirectory)  The local path on the agent where all folders for a given build definition are created.

More on variables can be found at: MSDN Use variables


If you want to see the sources or contribute, go to GitHub. And if you like the task, please leave a review at the marketplace.


5 thoughts on “Using the VSTS Zip and Unzip task”

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.