在构建过程中自动更新nuspec文件

H A*_*H A 8 build-automation tfs nuget nuget-package nuspec

我已经能够使用NuGetter创建一个构建定义来自动化NuGet包创建过程并将包上传到NuGet存储库.

但是,我想进一步自动化这个过程.以下是我希望在构建过程中自动执行的步骤列表:

  • 构建过程应该能够构建nuspec文件,而不是我手动创建此文件并将其保存在源控件存储库中,以便构建过程将其拾取.
  • 构建过程应该能够替换nuspec字段.

我真正想要自动化的nuspec字段是:

作者 我希望构建过程将nuspec文件中的此字段替换为签入代码的人员的姓名.

releaseNotes 我希望构建过程用签入注释替换nuspec文件中的这个字段.

有没有人能够做到这一点?如果是这样,你是如何进行自动化的呢?

Dee*_*pak 0

这篇文章How to save xml document generated when using nuget pack有一些想法

<XmlUpdate Namespace="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd" XmlFileName="My.Assembly.nuspec" XPath="//package/metadata/licenseUrl" Value="http://someurl" />          
<XmlUpdate Namespace="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd" XmlFileName="My.Assembly.nuspec" XPath="//package/metadata/projectUrl" Value="http://someurl" />          
<XmlUpdate Namespace="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd" XmlFileName="My.Assembly.nuspec" XPath="//package/metadata/iconUrl" Value="http://somenice.png" />            
<XmlUpdate Namespace="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd" XmlFileName="My.Assembly.nuspec" XPath="//package/metadata/tags" Value="My.Assembly" />           
<XmlUpdate Namespace="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd" XmlFileName="My.Assembly.nuspec" XPath="//package/metadata/releaseNotes" Value="Review readme.txt for details." />  
Run Code Online (Sandbox Code Playgroud)