Как я могу отключить создание рабочих элементов в конце неудачной сборки Team Foundation? - PullRequest
13 голосов
/ 23 сентября 2008

Я использую Team Foundation Build, но мы еще не используем TFS для отслеживания проблем, поэтому я хотел бы отключить создание рабочих элементов при неудачной сборке. Есть какой-либо способ сделать это? Я попытался закомментировать информацию о рабочем элементе в файле TFSBuild.proj для типа сборки, но это не помогло.

Ответы [ 2 ]

23 голосов
/ 23 сентября 2008

Попробуйте добавить это в PropertyGroup в вашем TFSBuild.proj:

<SkipWorkItemCreation>true</SkipWorkItemCreation>

Если вам интересно, как это работает, Microsoft.TeamFoundation.Build.targets содержит следующее:

  <Target Name="CoreCreateWorkItem"
          Condition=" '$(SkipWorkItemCreation)'!='true' and '$(IsDesktopBuild)'!='true' "
          DependsOnTargets="$(CoreCreateWorkItemDependsOn)">

    <PropertyGroup>
      <WorkItemTitle>$(WorkItemTitle) $(BuildNumber)</WorkItemTitle>
      <BuildLogText>$(BuildlogText) &lt;a href='file:///$(DropLocation)\$(BuildNumber)\BuildLog.txt'&gt;$(DropLocation)\$(BuildNumber)\BuildLog.txt&lt;/a &gt;.</BuildLogText>
      <ErrorWarningLogText Condition="!Exists('$(MSBuildProjectDirectory)\ErrorsWarningsLog.txt')"></ErrorWarningLogText>
      <ErrorWarningLogText Condition="Exists('$(MSBuildProjectDirectory)\ErrorsWarningsLog.txt')">$(ErrorWarningLogText) &lt;a href='file:///$(DropLocation)\$(BuildNumber)\ErrorsWarningsLog.txt'&gt;$(DropLocation)\$(BuildNumber)\ErrorsWarningsLog.txt&lt;/a &gt;.</ErrorWarningLogText>
      <WorkItemDescription>$(DescriptionText) %3CBR%2F%3E $(BuildlogText) %3CBR%2F%3E $(ErrorWarningLogText)</WorkItemDescription>
    </PropertyGroup>

    <CreateNewWorkItem
          TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
          BuildUri="$(BuildUri)"
          BuildNumber="$(BuildNumber)"
          Description="$(WorkItemDescription)"
          TeamProject="$(TeamProject)"
          Title="$(WorkItemTitle)"
          WorkItemFieldValues="$(WorkItemFieldValues)"
          WorkItemType="$(WorkItemType)"
          ContinueOnError="true" />

  </Target>

Вы можете переопределить любую из этих функций в своем собственном сценарии сборки, но Microsoft предоставляет удобное условие SkipWorkItemCreation вверху, которое можно использовать для отмены выполнения всей цели.

0 голосов
/ 19 июля 2018

Если вы используете tfs2010 или выше, вы можете сделать это в самом определении сборки.

На вкладке Процесс Определения сборки установите для свойства Create Work Item on failure значение false (в разделе «Дополнительно»)

...