防止VSTS中的构建后事件

时间:2018-06-28 17:09:57

标签: azure-devops azure-pipelines

出于开发目的,我的团队有一个post build事件,定义为在本地打包和发布nuget软件包。在VSTS中进行构建过程中无需执行此步骤,因为我们在构建过程中为此定义了一个步骤,以将nuget软件包打包并运送到其他服务器(没有符号)。现在,此步骤可以在我们运行的任何构建中执行。如何仅在构建服务器中防止这种情况?

1 个答案:

答案 0 :(得分:0)

为此,您将不得不深入研究MSBuild。您需要添加条件来检查在构建环境中运行时设置的环境变量之一,并且仅在该环境变量为空白时才运行。

例如

  <PropertyGroup>
    <PostBuildEvent Condition=" '$(BUILD_SOURCESDIRECTORY)' == '' ">echo Hello World</PostBuildEvent>
  </PropertyGroup>

BUILD_SOURCESDIRECTORY是一个环境变量,在构建环境中运行时会被填充,但通常不会在开发人员的桌面上填充。因此,echo Hello World仅在该值为空时运行。