This action is a wrapper for the Azure command lines: az storage file upload | az storage file upload-batch.  If you're having trouble using this action, or any of the Azure actions, please refer to the Azure command line reference.

The Upload Azure File action is a premium action that can be used to upload files to a file share under the specified account on Azure.

Before uploading files, you will need a Storage Account and a File Share . See also the Delete Azure File Action.

Upload Azure File

Name

A friendly name for this action (will be displayed in the actions workflow area).

Enabled

Determines if this action will be run within the relevant stage.

Working Folder

The folder where the command line executable is run.  This is optional and defaults to the workspace folder.

Authentication Actions

Generally you will need to log in to Azure before running this action and log out afterwards. If you have several Azure actions in a stage, you can avoid repeated logins by unchecking the Login action on all but the first Azure action and unchecking the Logout action on all but the last Azure action. The Authentication tab will be shown if either of these options is ticked.

Batch upload all files in folder matching pattern

Specifies whether one or multiple filers are to be uploaded from the folder.

Source File

The path to the source file to upload. [--source]

File Share Name

The destination file share which the file(s) will be uploaded to. [--container-name | --destination]

Path

The destination path within the file share to upload the files to. If the file name is omitted, the source file name will be used. [--path]

If the 'Batch delete all files in file share matching pattern' checkbox is ticked

Source Folder

The path to the source folder to upload to Azure as a batch. [--source]

Pattern

A globbing pattern used to select files in the source folder and its subfolders. [–pattern]

The supported pattern characters are:

  *        Matches zero or more of any character.
  ?        Matches exactly one of any character.
  [seq]  Matches one character of any of the characters within the square brackets.
  [!seq] Matches one character which is not one of the characters within the square brackets.

Note that matching is case-insensitive.

File Share Name

The destination file share which the file(s) will be uploaded to. [--container-name | --destination]

Destination Path

The destination directory within the file share to upload the files to. [--destination-path]

Using

The version of the Azure command line to use. It is important that the agent has the correct version of the Azure command line installed for command provided. 

The Using drop down is populated with any property collector whose namespace matches the pattern defined by the Create Azure Resource Group action. The pattern for this action is ^Azure.Cli.*

If you create a property collector for this action, make sure you select the Path Finder PlugIn type and give it a name that will match the pattern above in blue. Example names listed here, search the table's Plugin column for "Azure Command".

For more in-depth explanations on property collectors see Property Collectors.

Alternatively, you can select the Custom option from the Using drop down list and specify a path in the resulting input field that will be displayed. Please read Why it's a good idea to use a property collector before using this option.


Authentication

Sign in/out using service principal

Tick this to log in or out using a service principal instead of a username and password. An Azure service principal is an identity created for use with applications, hosted services, and automated tools to access Azure resources.  This access is restricted by the roles assigned to the service principal, giving you control over which resources can be accessed and at which level. For security reasons, it's always recommended to use service principals with automated tools rather than allowing them to log in with a user identity.  [login --service-principal]

Username / Password Authentication

Username

Enter a username to log into the Azure cloud. This is generally an email address. [login|logout --username]

Password

The password associated with the Azure username. [login --username]

Service Principal Authentication

Name or URL

Enter the application name or the URL associated with the service principal. [login --service-principal --username]

Client Secret or Certificate

Enter the service principal password, or the path to a X509 certificate used to create the service principal in PEM format. [login --service-principal --password]

Tenant

Enter the tenant associated with the service principal, as either an .onmicrosoft.com domain or Azure object ID. [login --service-principal --tenant]

Use certificate SN issuer

Tick to support automatic certificate rollovers with service principals configured with Subject Name and Issuer Authentication. [login --use-cert-sn-issuer]


Storage Account

Use connection string

If this is ticked, a connection string is used.

Connection String

This field is visible only if the Use Connection String checkbox is ticked.

The connection string for your storage account. [--connection-string]

Account Name

The name of your storage account. [--account-name]

Use Shared Access Signature (SAS) token

If this is ticked, a shared access signature (SAS) token is used.

SAS Token

This field is visible only if the Use Shared Access Signature (SAS) token checkbox is ticked.

Enter a shared access signature token. A shared access signature (SAS) provides you with a way to grant limited access to objects in your storage account to other clients, without exposing your account key. This is used in conjunction with storage account name. [--sas-token]

Account Key

The primary or secondary access key for your storage account. [--account-key]

You can get these keys into variables using the Get Azure Storage Account Keys Action.


Settings

Maximum Connections

The maximum number of parallel connections. The default is 1. [--max-connections]

Validate content

Specifies that an MD5 hash shall be calculated for each chunk of the file and verified by the service when the chunk has arrived. [--validate-content]

Command Timeout (in seconds)

The time in seconds to wait for the directory to be created. Leave zero to wait until complete. [--timeout]

Subscription

The name or ID of the subscription to use. If omitted the default subscription for your environment will be used. [--subscription]


Headers

Content Cache Control

A string defining the content caching policy. [--content-cache-control]

Content Disposition

A header indicating how the content is expected to be displayed. [--content-disposition]

Content Encoding

Defines the encoding used to compress the content. [--content-encoding]

Content Language

Describes the intended language(s) of the content. [--content-language]

Content MD5 Hash

An MD5 hash which can be used to verify the content. [--content-md5]

Content MIME Type

The content MIME type header describing the type of content. [--content-type]


Options

Log Level

The amount of information detail to display in the build log.

Timeout (in seconds)

How long to wait for the action to finish running before timing out. Leaving this blank (or zero) will default to 86400 seconds (24 hours).

No Response Timeout (in seconds)

How many seconds to wait for the Azure commands to respond with output before timing out. Leave zero to wait until the main timeout.

Treat failure as warning

Tick to continue build on failure marking the action with a warning status.

Ignore warnings

If this is ticked, any warnings logged will not mark the action with a warning status.


Environment

Environment Variables

Multiple environment variables can be defined - one per line. These are set before the command line is run.

Log environment variables

If this is ticked, environment variable values are written to the build log. 

Generate system environment variables

Tick this checkbox to set up a list of new environment variables prefixed with 'ContinuaCI.' for all current system expression objects and variables.

Mask sensitive variable values in system environment variables

This checkbox is visible only if the 'Generate system environment variables' checkbox is ticked.

If this is ticked, the values of any variables marked as sensitive will be masked with **** when setting system environment variables. Clear this to expose the values.


  • No labels