Если вы повторно запустите этот неисправный конвейер вместе с установкой system.debug
на true
, вы увидите другое сообщение, которое может более подробно объяснить причину сбоя: failed to perform copy command due to error: cannot start job due to error: cannot scan the path \\?\D:\a\1\s\https://storagename.blob.core.windows.net/container/file.txt
.
Теперь вы должны знать, почему вы столкнулись с этим сообщением об ошибке. Это потому, что наша задача Azure File Copy
не поддерживает использование URL-адреса HTTPS в sourcePath
. Значение sourcePath
должно быть удовлетворено по нижеуказанному:
Так как мы не поддерживаем использование HTTPS url здесь. Чтобы обойти это, вы можете сначала загрузить этот файл в рабочий каталог сборки, сначала используя команду Azure cli
. Затем загрузите его в AzureVM
:
- task: AzureCLI@1
displayName: 'Azure CLI '
inputs:
azureSubscription: {subscription}
scriptLocation: inlineScript
inlineScript: |
mkdir $(Build.SourcesDirectory)/File
az storage blob download --container-name {container name} --file $(Build.SourcesDirectory)/file --name {file name} --account-key $(accountkey) --account-name {blob name}
- task: AzureFileCopy@4
displayName: 'AzureVMs File Copy'
inputs:
SourcePath: '$(Build.SourcesDirectory)/File'
azureSubscription: {subscription}
Destination: AzureVMs
storage: {storage}
resourceGroup: '{resource group}'
vmsAdminUserName: {login name}
vmsAdminPassword: {login password}
TargetPath: 'xxx'
Примечание : Вы можете получить accesskey
на этой вкладке:
Теперь вы видите, что можете успешно загрузить файл в AzureVM.