仅当子目录中的文件已更改时,运行VSTS构建任务才能运行“npm build”

时间:2018-03-05 14:58:47

标签: azure-devops azure-pipelines azure-pipelines-build-task

我有一个很棒的ASP.NET Core项目和一个有Angular 5项目的子目录。

当前的VSTS构建过程大约需要20分钟,而npm installangular build --prod的使用时间最长。

而且,当我推送与Angular不相关的内容时,构建过程将再次构建所有内容,包括Angular项目。

我正在考虑两个选择:

  • 在Angular dir中有一个单独的Angular构建定义和一个用于更改文件的触发器。

  • 或者在npm任务中有一个聪明的条件,可以知道Angular中是否有变化(这是我的问题)

  • (或任何其他建议:D)

1 个答案:

答案 0 :(得分:0)

通过相关的东西,您的意思是每当您在ASP.NET Core项目中进行更改时

如果确实如此,则应为Angular项目和.NET Core项目设置两个构建定义。两者都可以在登记时建立触发器,它只会构建特定的文件集

如果您想要一个为发布创建单个工件的集成构建,您可以设置可以手动触发的第三个构建定义