Skip to content

Latest commit

 

History

History
439 lines (357 loc) · 19.3 KB

azure-file-copy-v1.md

File metadata and controls

439 lines (357 loc) · 19.3 KB
title description ms.date monikerRange
AzureFileCopy@1 - Azure file copy v1 task
Copy files to Azure Blob Storage or virtual machines (task version 1).
06/11/2024
<=azure-pipelines

AzureFileCopy@1 - Azure file copy v1 task

:::moniker range="<=azure-pipelines"

Copy files to Azure Blob Storage or virtual machines.

[!INCLUDE workload-identity]

:::moniker-end

Syntax

:::moniker range=">=azure-pipelines-2019.1"

# Azure file copy v1
# Copy files to Azure Blob Storage or virtual machines.
- task: AzureFileCopy@1
  inputs:
    SourcePath: # string. Required. Source. 
    #azureConnectionType: 'ConnectedServiceNameARM' # 'ConnectedServiceName' | 'ConnectedServiceNameARM'. Alias: ConnectedServiceNameSelector. Azure Connection Type. Default: ConnectedServiceNameARM.
    #azureClassicSubscription: # string. Alias: ConnectedServiceName. Required when ConnectedServiceNameSelector = ConnectedServiceName. Azure Classic Subscription. 
    azureSubscription: # string. Alias: ConnectedServiceNameARM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM. Azure Subscription. 
    Destination: # 'AzureBlob' | 'AzureVMs'. Required. Destination Type. 
    #classicStorage: # string. Alias: StorageAccount. Required when ConnectedServiceNameSelector = ConnectedServiceName. Classic Storage Account. 
    storage: # string. Alias: StorageAccountRM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM. RM Storage Account. 
    #ContainerName: # string. Required when Destination = AzureBlob. Container Name. 
    #BlobPrefix: # string. Optional. Use when Destination = AzureBlob. Blob Prefix. 
    #cloudService: # string. Alias: EnvironmentName. Required when ConnectedServiceNameSelector = ConnectedServiceName && Destination = AzureVMs. Cloud Service. 
    #resourceGroup: # string. Alias: EnvironmentNameRM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM && Destination = AzureVMs. Resource Group. 
    #ResourceFilteringMethod: 'machineNames' # 'machineNames' | 'tags'. Optional. Use when Destination = AzureVMs. Select Machines By. Default: machineNames.
    #MachineNames: # string. Optional. Use when Destination = AzureVMs. Filter Criteria. 
    #vmsAdminUserName: # string. Required when Destination = AzureVMs. Admin Login. 
    #vmsAdminPassword: # string. Required when Destination = AzureVMs. Password. 
    #TargetPath: # string. Required when Destination = AzureVMs. Destination Folder. 
    #AdditionalArguments: # string. Additional Arguments. 
    #enableCopyPrerequisites: false # boolean. Optional. Use when ConnectedServiceNameSelector = ConnectedServiceNameARM && Destination = AzureVMs. Enable Copy Prerequisites. Default: false.
    #CopyFilesInParallel: true # boolean. Optional. Use when Destination = AzureVMs. Copy in Parallel. Default: true.
    #CleanTargetBeforeCopy: false # boolean. Optional. Use when Destination = AzureVMs. Clean Target. Default: false.
    #skipCACheck: true # boolean. Optional. Use when Destination = AzureVMs. Test Certificate. Default: true.
  # Output
    #outputStorageUri: # string. Storage Container URI. 
    #outputStorageContainerSasToken: # string. Storage Container SAS Token.

:::moniker-end

:::moniker range="=azure-pipelines-2019"

# Azure File Copy v1
# Copy files to Azure blob or VM(s).
- task: AzureFileCopy@1
  inputs:
    SourcePath: # string. Required. Source. 
    #azureConnectionType: 'ConnectedServiceNameARM' # 'ConnectedServiceName' | 'ConnectedServiceNameARM'. Alias: ConnectedServiceNameSelector. Azure Connection Type. Default: ConnectedServiceNameARM.
    #azureClassicSubscription: # string. Alias: ConnectedServiceName. Required when ConnectedServiceNameSelector = ConnectedServiceName. Azure Classic Subscription. 
    azureSubscription: # string. Alias: ConnectedServiceNameARM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM. Azure Subscription. 
    Destination: # 'AzureBlob' | 'AzureVMs'. Required. Destination Type. 
    #classicStorage: # string. Alias: StorageAccount. Required when ConnectedServiceNameSelector = ConnectedServiceName. Classic Storage Account. 
    storage: # string. Alias: StorageAccountRM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM. RM Storage Account. 
    #ContainerName: # string. Required when Destination = AzureBlob. Container Name. 
    #BlobPrefix: # string. Optional. Use when Destination = AzureBlob. Blob Prefix. 
    #cloudService: # string. Alias: EnvironmentName. Required when ConnectedServiceNameSelector = ConnectedServiceName && Destination = AzureVMs. Cloud Service. 
    #resourceGroup: # string. Alias: EnvironmentNameRM. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM && Destination = AzureVMs. Resource Group. 
    #ResourceFilteringMethod: 'machineNames' # 'machineNames' | 'tags'. Optional. Use when Destination = AzureVMs. Select Machines By. Default: machineNames.
    #MachineNames: # string. Optional. Use when Destination = AzureVMs. Filter Criteria. 
    #vmsAdminUserName: # string. Required when Destination = AzureVMs. Admin Login. 
    #vmsAdminPassword: # string. Required when Destination = AzureVMs. Password. 
    #TargetPath: # string. Required when Destination = AzureVMs. Destination Folder. 
    #AdditionalArguments: # string. Additional Arguments. 
    #enableCopyPrerequisites: false # boolean. Optional. Use when ConnectedServiceNameSelector = ConnectedServiceNameARM && Destination = AzureVMs. Enable Copy Prerequisites. Default: false.
    #CopyFilesInParallel: true # boolean. Optional. Use when Destination = AzureVMs. Copy in Parallel. Default: true.
    #CleanTargetBeforeCopy: false # boolean. Optional. Use when Destination = AzureVMs. Clean Target. Default: false.
    #skipCACheck: true # boolean. Optional. Use when Destination = AzureVMs. Test Certificate. Default: true.
  # Output
    #outputStorageUri: # string. Storage Container URI. 
    #outputStorageContainerSasToken: # string. Storage Container SAS Token.

:::moniker-end

Inputs

:::moniker range="<=azure-pipelines"

SourcePath - Source
string. Required.

Specify the absolute path of the source folder, file on the local machine, or a UNC share. The specified value or expression should return either a single folder name or a file name.


:::moniker-end

:::moniker range="<=azure-pipelines"

azureConnectionType - Azure Connection Type
Input alias: ConnectedServiceNameSelector. string. Allowed values: ConnectedServiceName (Azure Classic), ConnectedServiceNameARM (Azure Resource Manager). Default value: ConnectedServiceNameARM.

Specify the Azure connection type.


:::moniker-end

:::moniker range="<=azure-pipelines"

azureClassicSubscription - Azure Classic Subscription
Input alias: ConnectedServiceName. string. Required when ConnectedServiceNameSelector = ConnectedServiceName.

Specify the target Azure Classic subscription.


:::moniker-end

:::moniker range="<=azure-pipelines"

azureSubscription - Azure Subscription
Input alias: ConnectedServiceNameARM. string. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM.

Specify the target Azure Resource Manager subscription.


:::moniker-end

:::moniker range="<=azure-pipelines"

Destination - Destination Type
string. Required. Allowed values: AzureBlob (Azure Blob), AzureVMs (Azure VMs).

Specify the destination type to use for copying the files.


:::moniker-end

:::moniker range="<=azure-pipelines"

classicStorage - Classic Storage Account
Input alias: StorageAccount. string. Required when ConnectedServiceNameSelector = ConnectedServiceName.

Specify a pre-existing classic storage account. This is the storage account used as an intermediary for copying files to Azure VMs.


:::moniker-end

:::moniker range="<=azure-pipelines"

storage - RM Storage Account
Input alias: StorageAccountRM. string. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM.

Specify a pre-existing ARM storage account. This is the storage account used as an intermediary for copying files to Azure VMs.


:::moniker-end

:::moniker range="<=azure-pipelines"

ContainerName - Container Name
string. Required when Destination = AzureBlob.

Specify the name of the container into which files are copied. If the specified container does not exist in the storage account, it will be created.

To create a virtual directory inside the container use the Blob prefix input.

Example: For target location https://myaccount.blob.core.windows.net/mycontainer/vd1/vd2/, specify container name mycontainer and Blob prefix: vd1/vd2.


:::moniker-end

:::moniker range="<=azure-pipelines"

BlobPrefix - Blob Prefix
string. Optional. Use when Destination = AzureBlob.

Specify a prefix that can be used to filter files.

Example: You can append a build number to filter the files from all Blobs with the same build number.

Example: If you specify a Blob prefix myvd1, a virtual directory is created inside the container. Files are copied from the source to https://myaccount.blob.core.windows.net/mycontainer/myvd1/.


:::moniker-end

:::moniker range="<=azure-pipelines"

cloudService - Cloud Service
Input alias: EnvironmentName. string. Required when ConnectedServiceNameSelector = ConnectedServiceName && Destination = AzureVMs.

Specify the name of the target Cloud Service.


:::moniker-end

:::moniker range="<=azure-pipelines"

resourceGroup - Resource Group
Input alias: EnvironmentNameRM. string. Required when ConnectedServiceNameSelector = ConnectedServiceNameARM && Destination = AzureVMs.

Specify the name of the target Resource Group.


:::moniker-end

:::moniker range="<=azure-pipelines"

ResourceFilteringMethod - Select Machines By
string. Optional. Use when Destination = AzureVMs. Allowed values: machineNames (Machine Names), tags. Default value: machineNames.

Specify a VM host name or tag that identifies a subset of VMs in a resource group. Tags are supported for resources created via the Azure Resource Manager only.


:::moniker-end

:::moniker range="<=azure-pipelines"

MachineNames - Filter Criteria
string. Optional. Use when Destination = AzureVMs.

Provide a list of Azure VM host names such as ffweb, ffdb, or tags such as Role:DB, Web, OS:Win8.1.

Note: Valid delimiters for tags include ,(comma), :(colon) and ;(semicolon). When providing multiple tags, the task will run only in the VMs that contain the specified tags. By default, the task runs in all VMs.


:::moniker-end

:::moniker range="<=azure-pipelines"

vmsAdminUserName - Admin Login
string. Required when Destination = AzureVMs.

Specify the user name of the Azure VM administrator account.


:::moniker-end

:::moniker range="<=azure-pipelines"

vmsAdminPassword - Password
string. Required when Destination = AzureVMs.

Specify the password for the Azure VM administrator account.

Valid input includes variables defined in build or release pipelines such as $(passwordVariable). To secure a password, mark it as secret.


:::moniker-end

:::moniker range="<=azure-pipelines"

TargetPath - Destination Folder
string. Required when Destination = AzureVMs.

Specify the local path on the target VMs for copying files from the source.

Valid input includes environment variables such as $env:windir\BudgetIT\Web.


:::moniker-end

:::moniker range="<=azure-pipelines"

AdditionalArguments - Additional Arguments
string.

Provide additional arguments to AzCopy.exe that will be applied when uploading to Blobs or VMs such as, /NC:10.


:::moniker-end

:::moniker range="<=azure-pipelines"

enableCopyPrerequisites - Enable Copy Prerequisites
boolean. Optional. Use when ConnectedServiceNameSelector = ConnectedServiceNameARM && Destination = AzureVMs. Default value: false.

When enabled, uses a self-signed certificate to configure a Windows Remote Management (WinRM) listener on port 5986 instead of the HTTPS protocol. Required for performing copy operations on Azure VMs. If the target VMs use a load balancer, configure inbound NAT rules for the target port (5986). Applies only for ARM VMs.


:::moniker-end

:::moniker range="<=azure-pipelines"

CopyFilesInParallel - Copy in Parallel
boolean. Optional. Use when Destination = AzureVMs. Default value: true.

Accepting the default setting copies files in parallel to the target VMs.


:::moniker-end

:::moniker range="<=azure-pipelines"

CleanTargetBeforeCopy - Clean Target
boolean. Optional. Use when Destination = AzureVMs. Default value: false.

Setting to true cleans the destination folder before performing the copy action.


:::moniker-end

:::moniker range="<=azure-pipelines"

skipCACheck - Test Certificate
boolean. Optional. Use when Destination = AzureVMs. Default value: true.

The default value will not validate if the server certificate was signed by a trusted CA before connecting over HTTPS.


:::moniker-end

:::moniker range="<=azure-pipelines"

outputStorageUri - Storage Container URI
string.

Specify the name of the variable used for the storage container URI to which files were copied. Valid only when the selected destination is an Azure Blob.


:::moniker-end

:::moniker range="<=azure-pipelines"

outputStorageContainerSasToken - Storage Container SAS Token
string.

Specify the name of the variable used for the storage container SAS token that accesses the files that were copied. Valid only when the selected destination is an Azure Blob.


:::moniker-end

Task control options

All tasks have control options in addition to their task inputs. For more information, see Control options and common task properties.

Output variables

:::moniker range="<=azure-pipelines"

None.

:::moniker-end

Requirements

:::moniker range="<=azure-pipelines"

Requirement Description
Pipeline types YAML, Classic build, Classic release
Runs on Agent, DeploymentGroup
Demands Self-hosted agents must have capabilities that match the following demands to run jobs that use this task: azureps
Capabilities This task does not satisfy any demands for subsequent tasks in the job.
Command restrictions Any
Settable variables Any
Agent version 1.103.0 or greater
Task category Deploy

:::moniker-end