【问题标题】:VSTS - build one of many projects from solutionVSTS - 从解决方案构建许多项目之一
【发布时间】:2018-07-25 19:39:49
【问题描述】:

我想将很多项目集中在同一个 VisualStudio 解决方案中: - API.Core(库类) - API.Mobile(.NET Core 项目) - API.Web(.NET Core 项目) - 数据库(SQL Server 数据库项目) - 函数(Azure 函数)

对于除库类之外的每个项目,我想配置一个构建定义,但我想在当且仅当我更改项目的一部分代码时触发构建。例如:我在 API.Web => 中做了一些修改,所以我希望 API.Web 的构建定义只触发而不是其他的。

有可能吗?

【问题讨论】:

  • 是的,这是可能的。在给出详细的解决方案之前,您能否提供更详细的信息: 1. 您使用什么版本控制系统来管理您的代码,Git 或 TFVC? 2. 你能展示你的 repo 的文件结构吗?

标签: visual-studio azure-devops azure-pipelines


【解决方案1】:

设置 CI 时,您可以设置路径过滤器。这将导致构建仅在特定路径中的文件发生更改时触发

【讨论】:

  • 如何在 Azure devops 中为 Git 执行此操作?那么你只能选择分支。不是路径...
  • TFVC 和 Git 都支持此功能(上面的示例实际上是使用 git repo)。它也应该适用于外部(即 GitHub)存储库。你能详细说明你想做什么吗?
【解决方案2】:

简单的方法是使用多个构建定义,每个构建定义用于一个项目。

然后正如 Remco 所说,在构建定义中为每个项目设置路径过滤器, 然后指定相应的项目文件或 /t:{project} msbuild 参数来构建相关项目。

例如,

构建定义名称:BuildDefForAPICore

路径过滤器:API.Core 项目文件夹的路径

在 Visual Studio 构建任务中选择 API.Core.csproj 文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-07
    • 1970-01-01
    • 1970-01-01
    • 2021-05-25
    • 1970-01-01
    相关资源
    最近更新 更多