Azure devops Azure DevOps条件构建步骤

Azure devops Azure DevOps条件构建步骤,azure-devops,Azure Devops,我有两个项目的解决方案 Integration.Api Integration.Common 在Azure DevOps中,我有为集成.Api项目运行的步骤,我也有为集成创建NuGet包的构建步骤。常见的项目: dotnet Pack Common dotnet Nuget Push 我应该在“自定义条件”文本框中输入什么,以便仅当Integration.Common项目已更改时,该步骤才会运行?例如,如果Integration.Api已更改,我仍然希望构建运行,但我只希望在Integrat

我有两个项目的解决方案

Integration.Api
Integration.Common
在Azure DevOps中,我有为
集成.Api
项目运行的步骤,我也有为
集成创建NuGet包的构建步骤。常见的
项目:

dotnet Pack Common
dotnet Nuget Push
我应该在“自定义条件”文本框中输入什么,以便仅当
Integration.Common
项目已更改时,该步骤才会运行?例如,如果
Integration.Api
已更改,我仍然希望构建运行,但我只希望在
Integration.Common
已更改时运行dotnet Pack步骤。

非常确定您需要在构建时设置条件,而不是在步骤中设置条件。在要构建公共组件的构建上放置这样的触发条件

trigger:
  paths:
    include:
    - /path/to/common/*

我应该在“自定义条件”文本框中输入什么,以便仅当Integration.Common项目已更改时,该步骤才会运行

没有这种现成的表达式

但是您可以使用powershell脚本拉出修改过的文件,并启用相应的变量,然后根据变量的值在自定义条件文本框中添加表达式

门票:


希望这能有所帮助。

但是如果更新了Integration.Api,我希望构建能够运行。好吧,那就这样做吧,我需要构建能够运行,而不管哪个项目发生了变化。在dotnet构建步骤之前还运行其他构建步骤。我只希望在公共文件已更新的情况下运行dotnet构建步骤。是否有方法检查dll的上次修改日期?如果Integration.Common.dll的上次修改日期大于当前部署的日期,则运行dotnet Pack。您需要将此版本分为两个不同的版本并使用软件包