VSTS版本管理:如何将Azure Blob用作工件?

时间:2016-08-18 15:57:25

标签: azure azure-devops azure-storage-blobs devops azure-pipelines-release-pipeline

在我的Build管道中,我使用了'AzureBlob文件复制'任务,我将应用程序的Web Deploy Zip文件上传到Azure Blob存储。

我想在发布管理中知道,如果有可能,我如何从Azure Blob存储中下载Zip文件并在我的发布管道中用作工件?

这是常见做法吗?因为我想存储我的应用程序的不同构建版本。

2 个答案:

答案 0 :(得分:1)

最佳做法通常是使用任务复制和上传工件,以便工件附加到构建本身 这样您就可以在发布定义中使用它来将其部署到某个地方 现在,如果你想在azure中进行某种归档,你可以做两件事,如果你需要有一个工件的url(例如,如果你正在部署一个ARM模板),那么上传到azure是最好的做法。登记/> 从技术上讲,你上传到azure的部分应该在发布过程中完成,因为它比构建更有意义 所以回顾一下流程是build => artifact => release =>上传并部署到azure 我希望有所帮助。

答案 1 :(得分:-1)

您可以添加" Azure PowerShell"构建定义中的任务从Azure Blob获取文件:

enter image description here

以下是一个基本的Azure PowerShell脚本,用于从Blob中获取Blob中的文件:

$SubscriptionName = "Subscription Name"

$StorageAccountName = "Storage Account Name"

$Location = "Storage Location"

$ContainerName = "ContainerName"

$DestinationFolder = $env:System_DefaultWorkingDirectory

Set-AzureSubscription -CurrentStorageAccountName $StorageAccountName -SubscriptionName $SubscriptionName

Get-AzureStorageBlob -Container $ContainerName

$blobs = Get-AzureStorageBlob -Container $ContainerName

New-Item -Path $DestinationFolder -ItemType Directory -Force  

$blobs | Get-AzureStorageBlobContent –Destination $DestinationFolder -Force