Jenkins : Windows Azure Storage Plugin

Windows-Azure-Storage Plugin

Plugin Information

View Azure Storage on the plugin site for more information.

A plugin for uploading build artifacts to, or downloading build dependencies from, Microsoft Azure Blob storage.
Note: Once you upgrade to 0.3.3+ successfully, it's recommended not to downgrade, it will break builds.
(For a more detailed tutorial see http://go.microsoft.com/fwlink/?LinkId=280058)

Installing

This plugin is available in the Jenkins plugin manager.
To install in Jenkins, go to Manage Jenkins | Manage Plugins | Available | Windows Azure Storage Plugin | Install.
Then restart Jenkins to complete the installation.

Configuration

At least one Azure storage account must be configured in the global configuration before the plugin can be used in build steps. To add a storage account, go to Manage Jenkins | Configure System | Microsoft Azure Storage Account Configuration and fill out the needed information.

Post-build actions

Upload artifacts to Azure

For a more detailed tutorial see: http://go.microsoft.com/fwlink/?LinkId=280058.

The `Upload artifacts to Azure` post-build step uploads a build artifact generated by your build to Azure Blobs or Azure Files.

1. Select the storage account name to use from the drop-down control
2. Enter a name for the container or the file share. A new container or file share will be created if it does not exist. Environment variables can also be referenced. For example: $JOB_NAME
3. Enter the list of artifacts to upload, following the Ant glob syntax. You may create mappings between groups of artifacts and the virtual directory structure for them to be put under in the blob storage using the "::" notation.
4. Optionally, specify the common virtual path under the container or file share that the artifacts will be placed under. This string (followed by a slash '/' character) will follow the container name or the file share name (after a slash) in the URL for each artifact. Any combination of characters can be used, but reserved URL characters must be properly escaped. Environment variables can also be referenced. For example: "$BUILD_ID/$BUILD_NUMBER/"

Build actions

Download from Azure Blob storage

The `Download from Azure blob storage’ build step downloads blob contents from Azure Blobs or Azure Files.

1. Select the storage account name to use from the drop-down control
2. Select 'Download From Container', 'Download From Azure Files' or 'Download artifact from build'.

  • 'Download From Container' >> Enter the name of the container to download from. Environment variables can also be referenced. For example: $JOB_NAME
  • 'Download artifact from build' >> Enter Project Name and select the build from the drop-down for 'Build to download' . For example: 'Latest successful build'.

3. Enter the name of the blob or file to download. You may also use the wild card "*" at the end to select multiple blob or file downloads sharing the same prefix, for example: project
4. Optionally, enter the target download path. If not specified, the files will be downloaded into the job's work-space.
Environment variables can also be referenced, for example: $JOB_NAME

For a tutorial, see http://go.microsoft.com/fwlink/?LinkId=280058.

Change-log

Version 1.1.1 September 30, 2019

  • Rename AzureCredentials to AzureStorageAccount (JENKINS-58710)

Version 1.1.0 July 25, 2019

  • Add option to clean up virtual
  • Fix potential cleanup container
  • Fix large file missing metadata

Version 1.0.4 July 17, 2019

  • Fix NoClassDefFoundError on agent

Version 1.0.3 July 11, 2019

  • Change temporary file name ruling

Version 1.0.2 July 8, 2019

  • Fix using Jenkins proxy issue
  • Delete temporary directory after uploading
  • Fix possible ConcurrentModificationException

Version 1.0.1 June 18, 2019

  • Fix missing small files bug

Version 1.0.0 June 11, 2019

  • Bump Jenkins baseline to 2.89.4
  • Add support for configuration as code
  • Fix failing to download when there is a slash in blob name
  • Fix download share file ant syntax issue
  • Change default blob URL to https
  • Fix failing to upload large files to blob

Version 0.3.13 January 31, 2019

  • Fix serialize issue from master to agent

Version 0.3.12 January 28, 2019

  • Upload files to Blob service on agents using SAS instead of sdk

Version 0.3.11 November 9, 2018

  • Upgrade Azure Storage SDK to version 6.1.0 (#132)
  • Make compatibility with versions before 0.3.6 (#135)
  • Fix naming convention rules not consist issue (#126)
  • Fix pipeline with multi azureUpload commands cannot list artifacts action properly (#129)
  • Fix cannot upload empty files to share file (#111)

Version 0.3.10 August 16, 2018

  • Add support for static website hosting (#119)
  • Fix storage account not masked in Jenkins pipeline (#118)
  • Fix URL broken for Blue Ocean artifacts (#115)

Version 0.3.9 April 4, 2018

  • Do not mark build as unstable if no files are downloaded (JENKINS-42341)
  • Support credentials binding for storage account (#99)
  • Support for parallel files upload and download (#86)
  • Fix broken image in job action (#104)
  • Support for Blue Ocean artifacts listing (#101)
  • Support for proxy set in Jenkins (#31)
  • Option to upload modified artifacts only (#52)
  • Support for credentials lookup in Folders

Version 0.3.8 January 12, 2018

  • Make container/share name optional in pipeline azureUpload (#82)
  • Fix download of Azure file artifacts (#84)
  • Fix bland window issue while configuring storage credentials globally (#85)
  • Explicitly specify MIME type for js files (#89)

Version 0.3.7 November 7, 2017

  • Support HTTPS when upload or download files.
  • Support uploading to root container.
  • Fix content length property when upload or download files.
  • Fix a null pointer exception when upgrading from last version.

Version 0.3.6 June 20, 2017

  • Support blob properties when uploading files.
  • Support blob metadata when upload files.
  • Added an option to delete original files after download.
  • Added an option to auto detect content type when upload files.
  • Support file storage
  • Added pipeline support. Now you can use Azure Storage plugin in pipeline code. For example:

    Upload
    azureUpload storageCredentialId: '<credentials id>', storageType: 'blobstorage',
                containerName: '<container>', filesPath: '<files in glob pattern>', virtualPath: '<remote path>'
    Download
    azureDownload storageCredentialId: '<credentials id>', downloadType: 'container',
                  containerName: '<container>', includeFilesPattern: '<files in glob pattern>', downloadDirLoc: '<local path>'

Version 0.3.5 April 12, 2017

  • Fixed an issue on Windows masters that caused uploaded files to get locked on the local machine and couldn’t be deleted.

Version 0.3.4 March 14, 2017

  • The copyartifact dependency is mandatory. JENKINS-41713
  • Fixed the artifact download links. JENKINS-42726
  • The "Microsoft Azure Storage" credentials can now be updated. #43

Version 0.3.3 February 16, 2017

  • Storage account credentials are more secure now. They have moved to Jenkins credential store.
  • Once you upgrade to 0.3.3 from older version, no need to manually configure existing jobs.

Version 0.3.2 January 26, 2017

  • Storage account key has become a hidden field.
  • Added the capability to use managed artifacts, a use case for artifacts can be downloading a known good build or an artifact from an upstream build.
  • Links on the project page (to download) has been fixed. This now allows easier access to download artifacts from Jenkins.
  • Downloads are now faster, plugin doesn't need to search the entire container for the correct blobs.
  • Changes are made inline with Jenkins API, updated Azure Java SDK to provide better output to Jenkins REST API.

Version 0.3.0 September 09, 2014

  • Added easily accessible links for azure artifacts uploaded to blob storage.

Version 0.2.0 April 23, 2014

  • Changed the logic of the "make container public" checkbox to apply to newly created containers only
  • Added a "download from blob" build action
  • Added a "clean container" option to the artifact uploader post-build action
  • Some renamings due to branding changes in Azure (Windows Azure changing to Microsoft Azure)

Version 0.1.0 February 12, 2013)

  • Initial release

Attachments:

storage_config.jpg (image/jpeg)