Using the VSTS Zip and Unzip task

Zip and Unzip directories in VSTS builds and releases

Advertisements

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/Common.zip

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

vsts-zip-zip
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/Common.zip => src/project/Modules/Common

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

vsts-zip-unzip
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.

vsts-zip-zip-variables
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

Feedback

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.

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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 )

Google+ photo

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

Connecting to %s