【问题标题】:How to put non-project build files on build server during build?如何在构建期间将非项目构建文件放在构建服务器上?
【发布时间】:2017-09-26 22:32:09
【问题描述】:

工具:Team Foundation Server 2012 NuGet:3.0 Powershell:3.0

我想知道在构建过程中如何将构建相关文件放到构建服务器上。

我们有一个在签入时运行的 CI 构建,因此除非我们希望每次更新 nuget.config 或 powershell 脚本时都触发构建,否则我们需要将它们存储在其他地方。

我可以将它们放在一个单独的团队项目中,并将它们添加到我们的工作文件夹中,但是每当我们对构建文件进行更改时,TFS 都会再次启动构建。我们不希望这样。

有没有办法将一些构建文件托管到 TFS 并在构建期间将它们下载到构建服务器中,如果您更改这些文件不会导致新的构建被触发?

如果我更改 PS1 文件,我们不希望构建因此而运行。

【问题讨论】:

    标签: powershell tfs


    【解决方案1】:

    签入时,您可以在评论中添加:***NO_CI***,CI 构建将不会触发。

    除此之外,您可以通过自定义 XAML 并添加调用进程任务来调用 powershell.exe 并传递您保留在源代码管理中的 powershell 脚本来触发 Powershell 脚本。

    从那里您可以使用 OneGet 或 Download-File 来获取和安装您需要的任何东西。

    【讨论】:

    • 谢谢。我从未听说过 One-Get 或 Download-File。我确实找到了一个名为 TFSExport.exe 的工具。这就是我需要的。我猜 One-Get 和 Download-File 做类似的事情?
    • Oneget 是一个适用于 Windows 的包管理器,可以获取 chcolatey、nuget、powershell 库和其他资源。 Download-file 是用于从任何 Web 位置下载文件的 powershell 命令。并且 tfsexport 确实可以从源代码管理中获取文件。
    猜你喜欢
    • 2013-03-11
    • 2021-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 2012-01-03
    • 1970-01-01
    • 2017-08-07
    相关资源
    最近更新 更多