我正在使用Github存储库中的Azure Pipelines。
我能够使用azure-pipelines.yml构建Dotnet Core类库:
trigger:
- master
pool:
vmImage: 'Ubuntu-16.04'
variables:
buildConfiguration: 'Release'
steps:
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'build'
在构建后将什么内容添加到此脚本中以将程序包发布到Azure Devops Artifacts?
以及如何设置每个版本的发布?来自GitHub标签吗?
答案 0 :(得分:0)
Here是提供大量yaml示例的文档。
您要定位的区域大约是pushing to an artifact feed。
steps:
- task: NuGetCommand@2
displayName: 'NuGet push'
inputs:
command: push
publishVstsFeed: '<feedName>'
allowPackageConflicts: true
This部分是关于对软件包进行版本控制的。
variables:
Major: '1'
Minor: '0'
Patch: '0'
steps:
- task: NuGetCommand@2
inputs:
command: pack
versioningScheme: byPrereleaseNumber
majorVersion: '$(Major)'
minorVersion: '$(Minor)'
patchVersion: '$(Patch)'
我们已经完成了与本版本说明部分中所述类似的操作,以允许开发人员增加主要和次要编号,并且补丁和内部版本号均来自内部版本号ex。 1.2.1902.127
。这告诉我们此软件包是功能2上1.x家族的成员,是该版本于2019年2月12日的第七次修订。
我们还希望对程序集进行版本控制,因此,我们有一些powershell脚本,它们使用适当的属性值来编写.csproj文件。对于.Net Framework项目,我们使用MSBuild -t:Pack
来利用这些属性进行程序包版本控制,对于.Net Standard&Core,我们使用dotnet pack
任务。
注意:NuGet.exe在.Net Framework的程序包引用语法中存在一个错误,其中没有填充依赖项树,因此我们使用MSBuild打包这些项目