title | description | ms.date | monikerRange |
---|---|---|---|
AzureFileCopy@1 - Azure file copy v1 task |
Copy files to Azure Blob Storage or virtual machines (task version 1). |
08/19/2024 |
<=azure-pipelines |
:::moniker range="=azure-pipelines"
Copy files to Azure Blob Storage or virtual machines.
This task is deprecated as this version of the AzureFileCopy task uses a retired version of AzCopy. Use the latest version of the AzureFileCopy task. See AzCopy Migration Guide for v8 to v10.
[!INCLUDE workload-identity]
:::moniker-end
:::moniker range="<=azure-pipelines-2022.2"
Copy files to Azure Blob Storage or virtual machines.
[!INCLUDE workload-identity]
:::moniker-end
:::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
:::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
All tasks have control options in addition to their task inputs. For more information, see Control options and common task properties.
:::moniker range="<=azure-pipelines"
None.
:::moniker-end
:::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