【问题标题】:How to set the TFS NuGet Packager destination folder?如何设置 TFS NuGet Packager 目标文件夹?
【发布时间】:2017-08-27 22:12:18
【问题描述】:

我在 TFS 2017 中添加了新的构建步骤,以将我的 DLL 打包到 nuspec(NuGet Packager)中。 我的问题是我无法设置目标文件夹。

包文件夹”的描述是

将创建包的文件夹。如果为空,包裹将是 与 csproj 或 nuspec 文件一起创建。

当我将此字段留空时,我希望按照信息中的说明在“$/MyProject/Common/”中创建它。但它一直在构建器代理根文件夹中创建它。并添加 "-OutputDirectory "C:_work\24\s"" 即使我在包文件夹中写入另一个文件夹。

我在这里拧干什么呢? 是否有更好的方法为 TFS 中的每个版本构建打包和发布 nuget?

NuGet 打包程序日志:

2017-04-02T15:01:51.3457383Z Set workingFolder to default: C:\agent\tasks\NuGetPackager\0.1.72
2017-04-02T15:01:51.3769893Z Executing the powershell script: C:\agent\tasks\NuGetPackager\0.1.72\NuGetPackager.ps1
2017-04-02T15:01:51.6426327Z C:\agent\agent\worker\tools\NuGet.exe pack "C:\_work\24\s\Common\Common.nuspec" -OutputDirectory "C:\_work\24\s" -version 1.0.17092.08
2017-04-02T15:01:52.0332823Z Attempting to build package from 'Common.nuspec'.
2017-04-02T15:01:52.1895494Z Successfully created package 'C:\_work\24\s\Common.1.0.17092.08.nupkg'.

【问题讨论】:

    标签: tfs build nuget nuget-package nuget-package-restore


    【解决方案1】:

    只需指定要放置包的文件夹即可。

    Package Folder

    指定要放置包的文件夹。你可以使用一个 变量如$(Build.StagingDirectory)\packages


    更新

    当您将文件夹留空时,它将自动 AddParameter of outputdir= builder agent root folder。当您输入$/MyProject/Common 时,它将基于builder agent root folder/$/MyProject/Common 创建文件夹

    根据位于C:\agent\tasks\NuGetPackager\xxx\NuGetPackager.ps1的powershell脚本

     $argsPack = "pack `"$fileToPackage`" -OutputDirectory `"$outputdir`" -Properties $buildProps";
    

    所以它肯定会放在代理根文件夹中。回到描述:

    如果你把它留空,包将在同一个文件中创建 包含 .csproj 或 .nuspec 文件的目录。

    不确定同一目录表示是否同一文件夹级别。然而 alongside 似乎意味着相同的文件夹级别。

    您可以在GITHub-VSTS TasksDevelop Community-Team Services 中提交错误,两者都会得到 TFS 开发团队的快速响应。

    【讨论】:

    • 最终我确实设法直接使用包文件夹路径和服务器路径,例如 $/MyProject/Common。但问题是当我把它留空时,它总是放在代理根文件夹中。例如我的 nuspec 路径是直接使用包文件夹路径和服务器路径,例如 $/MyProject/Common/dir_a/dir_b/mynu.nuspec --> nupkg 将在“$”中创建(C: _work) 而不是像预期的那样在 "$/MyProject/Common/dir_a/dir_b" 中。
    • @AviramFireberger 经过更多细节,得到了和你一样的结果。不确定相同的目录是否意味着相同的文件夹级别。建议您在 github 或开发社区提交 bug 报告。更多详情请看我的更新回复。
    • 很好,感谢您的详细回答
    • 我在开发者社区开了一个报告:developercommunity.visualstudio.com/content/problem/39529/…
    猜你喜欢
    • 2011-02-16
    • 2014-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多