如何配置Azure DevOps以Web可下载形式发布二进制文件,并自动更新我的readme.md或Wiki页面以反映最新发布的工件?
我知道如何为发布到Azure的工件构建发布管道,例如我可以发布webapp和功能。 但是我不知道如何发布和发布可下载的内容。
我希望结果类似于GitHub版本,我的用户可以在其中浏览版本,然后单击并下载文件。 我希望使用发布数据自动更新项目页面(readme.md或Wiki),类似于我创建构建状态链接的方式。
答案 0 :(得分:1)
如果要将工件上传到共享路径。我建议您可以添加脚本任务,以将发布的工件上传到共享路径或ftp服务器。
例如,如果可以使用azure存储,则可以使用以下脚本将构建工件发布到Azure存储中
$source = "build file"
$azureStorageKey = "xxxxx"
$storage_context = New-AzureStorageContext -StorageAccountName "yourstorageAccount" -StorageAccountKey "$azureStorageKey"
Set-AzureStorageBlobContent -Context $storage_context -Container "containerName" -File $source -Blob "drop.zip" -Force
我希望使用发布数据自动更新项目页面(readme.md或wiki),类似于我创建构建状态链接的方式。
是的,您可以使用Azure管道构建状态徽章来做到这一点。您可以将markdown链接复制到自述文件中
更新:
我进行了一个演示,将构建文件与以下YAML文件上传到Azure存储。
queue:
name: Hosted VS2017
demands:
- msbuild
- visualstudio
- azureps
steps:
- task: NuGetCommand@2
displayName: 'NuGet restore'
- task: VSBuild@1
displayName: 'Build solution **\*.sln'
- task: CopyFiles@2
displayName: 'Copy Files'
inputs:
SourceFolder: '$(build.sourcesdirectory)'
TargetFolder: '$(build.artifactstagingdirectory)'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: drop'
- task: ArchiveFiles@2
displayName: 'Archive $(Build.ArtifactStagingDirectory)'
inputs:
rootFolderOrFile: '$(Build.ArtifactStagingDirectory)'
- task: AzureFileCopy@1
displayName: 'AzureBlob File Copy'
inputs:
SourcePath: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
azureSubscription: xxxxx
Destination: AzureBlob
storage: $(storageAccountName)
ContainerName: $(containerName)
UI设计:
我希望页面上有一个下载链接,该链接指向已通过的最新版本。
我们可以使用AzureBlob文件复制任务将构建轻松地复制到Azure blob存储。
如果可以使用Azure function,则可以使用Blob触发器与脚本一起创建自定义页面。