¿Cómo puedo desactivar la creación de elementos de trabajo al final de una Team Foundation Build fallida?

StackOverflow https://stackoverflow.com/questions/122154

  •  02-07-2019
  •  | 
  •  

Pregunta

Estoy usando Team Foundation Build pero aún no usamos TFS para el seguimiento de problemas, por lo que me gustaría deshabilitar la creación de elementos de trabajo en una compilación fallida.¿Hay alguna manera de hacer esto?Intenté comentar la información del elemento de trabajo en el archivo TFSBuild.proj para el tipo de compilación, pero no funcionó.

¿Fue útil?

Solución

Intente agregar esto dentro del PropertyGroup en su TFSBuild.proj:

<SkipWorkItemCreation>true</SkipWorkItemCreation>

Si tiene curiosidad sobre cómo funciona esto, Microsoft.TeamFoundation.Build.targets contiene lo siguiente:

  <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>

Puede anular cualquiera de estas funciones en su propio script de compilación, pero Microsoft proporciona la práctica condición SkipWorkItemCreation en la parte superior, que puede usar para cancelar la ejecución de todo el objetivo.

Otros consejos

Si está utilizando tfs2010 o superior, puede hacerlo en la definición de compilación.

En el Pestaña de proceso de Definición de compilación establece el Create Work Item on failure propiedad a false (en la sección Avanzado)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top