簡體   English   中英

使用 Azure DevOps 中的 Azure 文件復制任務將數據從存儲帳戶復制到存儲帳戶

[英]Using Azure File Copy Task in Azure DevOps to Copy Data from Storage Account to Storage Account

我配置了以下 YAML 但猜測我不能在這里使用存儲帳戶作為源輸入? 我假設我可以,因為該任務只是使用 azcopy (注意:該命令在命令行中運行良好,只是不在管道中(即設置了權限(例如,已授權 SPN 並設置了 RBAC)。

這是代碼:

trigger:
- dev

pool:
  vmImage: windows-latest
steps:
 #Copy files to Azure Blob Storage
- task: AzureFileCopy@4
  inputs:
    sourcePath: 'https://someonesbackups.blob.core.windows.net/backups?mysastokengoeshere'
    azureSubscription: MY-Production-Subscription
    destination: azureBlob
    storage: azcopypipelinetest
    containerName: restored
    additionalArgumentsForBlobCopy: --recursive=true

但是,當它運行時,我收到以下錯誤:

"failed to perform copy command due to error: cannot start job due to error: cannot scan the path \\?\D:\a\1\s\https:\someonesbackups.blob.core.windows.net\backups?mysastokengoeshere=-REDACTED-, please verify that it is a valid."

當然看起來好像你可以做到這一點,但我猜我在這里遺漏了一些基本的東西。

https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-file-copy?view=azure-devops

Azure 文件復制任務僅支持將文件從本地計算機或 UNC 共享上傳到存儲帳戶。

您可以在任務介紹中檢查sourcepath 字段定義。

在此處輸入圖像描述

要將數據從存儲帳戶復制到存儲帳戶,您需要使用azcopy 命令將文件復制到本地計算機,並使用 Azure 文件復制任務將文件上傳到另一個存儲帳戶。

- script: 'azcopy copy ''https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory/*'' ''$(build.sourcesdirectory)\myDirectory'''
  displayName: 'Command Line Script'

- task: AzureFileCopy@4
  inputs:
    sourcePath: '$(build.sourcesdirectory)\myDirectory'
    azureSubscription: MY-Production-Subscription
    destination: azureBlob
    storage: azcopypipelinetest
    containerName: restored
    additionalArgumentsForBlobCopy: --recursive=true

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM