azure - 使用 Azure DevOps 中的 Azure 文件复制任务将数据从存储帐户复制到存储帐户

标签 azure azure-devops azure-pipelines azcopy

我配置了以下 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://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-file-copy?view=azure-devops

最佳答案

Azure 文件复制任务仅支持将文件从本地计算机或 UNC 共享上传到存储帐户。

您可以在任务介绍中查看sourcepath字段定义。

enter image description here

要将数据从存储帐户复制到存储帐户,您需要使用 azcopy command将文件复制到本地计算机,然后使用 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

关于azure - 使用 Azure DevOps 中的 Azure 文件复制任务将数据从存储帐户复制到存储帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66569201/

相关文章:

java - 无法将 Java 中的 Azure Function 部署到 Azure 云上

azure - 在 IIS web.config 中使用动态 IP 安全设置时忽略某些 IP 或 IP 范围

azure VHD 1TB 上传

azure-devops - 添加环境到管道卡在 "connecting to server"

azure-devops - 如何使用Azure Key Vault中的证书/ key 对使用Azure Pipelines构建的代码进行签名?

azure - 使用 Microsoft Graph API 更新 Azure AD 应用程序 key 或 secret - BadRequest 错误

azure-devops - 使用 Azure DevOps 经典构建管道和 TFVC 管理分支

azure-devops - 调整 Azure devops wiki 中的美人鱼图空白

bash - 通过 DevOps SSH 任务访问管道变量

azure - 如何通过rest api触发azure管道