NuGetter:如何指定nuspec文件在单个构建定义中生成多个包?

时间:2013-05-02 00:01:33

标签: nuget tfsbuild

我正在尝试使用TFS NuGetter生成多个nuget包。我正在使用NuGetterMultiPkgBuildVersionedTemplate20.xaml。我可以成功生成一个包,但是在指定多个nuspec文件时遇到了麻烦。

使用http://nugetter.codeplex.com/中的以下定义示例,我可以成功生成一个包。

enter image description here

如何指定多个nuspec文件以便生成多个nuget包?

1 个答案:

答案 0 :(得分:4)

需要在单独的文件中提供多个包列表,并且需要在 NuGetterMultiPkgBuildVersionedTemplate20.xaml

中的以下部分中提及该文件。

<强> 6。 NuGetter(A) - 预包装
多包列表文件路径 - &gt; NuGetPrePackage \ AppMultiPackages.xml

文件的格式可以是这样的 -

<?xml version="1.0"?>
<NuGetterPackages>
    <NuGetterPackage name="Sample1">
        <NuSpecFilePath>NuGetPrePackage\Sample1.nuspec</NuSpecFilePath>
        <BasePath>NuGetPrePackage</BasePath>
        <InvokePowerShell>True</InvokePowerShell>
        <PowerShellScriptPath>Powershell\Sample1\PrePackage.ps1</PowerShellScriptPath>
        <InvokePush>True</InvokePush>
        <OutputDirectory>NuGetPackage</OutputDirectory>
        <PushDestination>D:\Drops\PackageRepository\MySite\Test</PushDestination>
        <Version>4.0.j.b</Version>
    </NuGetterPackage>  
    <NuGetterPackage name="Sample2">
        <NuSpecFilePath>NuGetPrePackage\Sample2.nuspec</NuSpecFilePath>
        <BasePath>NuGetPrePackage</BasePath>
        <InvokePowerShell>True</InvokePowerShell>
        <PowerShellScriptPath>Powershell\Sample2\PrePackage.ps1</PowerShellScriptPath>
        <InvokePush>True</InvokePush>
        <OutputDirectory>NuGetPackage</OutputDirectory>
        <PushDestination>D:\Drops\PackageRepository\MySite\Test</PushDestination>
        <Version>4.2.j.b</Version>
    </NuGetterPackage>  
</NuGetterPackages>

以下文档中的屏幕截图很好地解释了不同的选项。

enter image description here