Definir un proceso de compilación basado en la plantilla predeterminada

Puede usar la plantilla predeterminada (DefaultTemplate.11.1.xaml) para definir rápidamente una compilación básica seleccionando los proyectos de código que desea compilar.También puede usar esta plantilla para incluir funciones más avanzadas (como la ejecución de pruebas automatizadas) y ajustar diversos aspectos del proceso de compilación de forma que satisfagan las necesidades de su equipo.

Permisos necesarios

Para realizar este procedimiento, debe tener establecido el permiso Editar definición de compilación en Permitir.Para obtener más información, vea Permisos de Team Foundation Server.

Para crear una definición de compilación mediante la plantilla predeterminada

  1. En Team Explorer:

    1. Si aún no está conectado al proyecto de equipo en el que desea trabajar, conéctese al mismo.

    2. Elija Icono de inicioInicio y luego eslija Icono de compilacionesCompilaciones.

    3. En la página Compilaciones, elija Definición de nueva compilación.

    Aparece una nueva ventana de definición de compilación.

  2. En la pestaña de Proceso , en Plantilla de proceso de compilación, la plantilla está seleccionada de forma predeterminada.En Parámetros del proceso de compilación, expanda el nodo Required y especifique al menos una solución o proyecto para su compilación.

    Para obtener más información, vea Especificar los proyectos que desea compilar más adelante en este tema.

  3. Use la información que aparece más adelante en este tema para completar los campos que proporcionan la funcionalidad que desea incluir en esta definición de compilación.

  4. Después de completar los campos de la pestaña de Proceso, especifique las opciones de proceso de las otras pestañas.

    Para obtener más información, vea Crear una definición de compilación.

En este tema

  • Parámetros del proceso de compilación de la plantilla predeterminada

  • Especificar los proyectos que desea compilar

  • Especificar las plataformas y configuraciones que desea compilar

  • Especificar los agentes de compilación que procesan la compilación

  • Especificar límites de tiempo del agente de compilación

  • Ejecutar pruebas automatizadas y habilitar el análisis de impacto de las pruebas

  • Especificar parámetros básicos del proceso de compilación

  • Especificar parámetros avanzados del proceso de compilación

Parámetros del proceso de compilación de la plantilla predeterminada

En este tema se explica cómo se define una compilación usando los parámetros de proceso de las compilaciones que se basan en la plantilla predeterminada.La información de este tema describe la funcionalidad que debe coincidir con Visual Studio siempre que las condiciones siguientes sean verdaderas:

  • Está trabajando en un proyecto de equipo que se creó a partir de una de las plantillas de proceso incluidas con Visual Studio.

  • Ningún miembro del equipo ha quitado o personalizado la plantilla predeterminada.

Especificar los proyectos que desea compilar

En el cuadro Proyectos para compilar, puede especificar una o varias soluciones o proyectos de código para su compilación.(Para mostrar este cuadro, expanda el nodo Required y, a continuación, expanda el nodo Elementos para compilar). Debe especificar al menos una solución o un proyecto.

Si está compilando varios proyectos relacionados, normalmente deberá agregarlos a una única solución y especificar esa solución en el cuadro Proyectos para compilar en lugar de mostrar cada proyecto por separado.

En el cuadro Proyectos para compilar, haga clic en los puntos suspensivos (...) para abrir y utilizar el cuadro de diálogo Soluciones y proyectos para especificar las soluciones o proyectos para compilar.

Para rellenar manualmente el cuadro Proyectos para compilar, especifique la ruta de acceso del control de versiones de cada proyecto o solución que desee compilar.Se delimita cada valor con una coma, como se muestra en el ejemplo siguiente:

$/Features/FeatureA/Server/All Server Projects.sln, $/Features/FeatureA/Client/All Client Projects.sln

Nota importanteImportante

Asegúrese de que la ruta de acceso a cada proyecto o solución en un elemento secundario de uno de los valores de Carpeta de control de código fuente que aparecen en la pestaña Área de trabajo de la definición de compilación.

Especificar las plataformas y configuraciones que desea compilar

En el cuadro Configuraciones para compilación, puede especificar las plataformas y configuraciones que desea compilar.(Para mostrar este cuadro, expanda el nodo Required y, a continuación, expanda el nodo Elementos para compilar). Por ejemplo, para especificar que en esta compilación únicamente debe compilarse la configuración de lanzamiento de la versión de 32 bits del proyecto de C++, escriba Release| x86 en este cuadro.

SugerenciaSugerencia

Si el código base es grande, para aumentar significativamente la velocidad de procesamiento de la compilación, compile únicamente las configuraciones y plataformas que necesite.

Si deja vacío el cuadro Configuraciones para compilación, se compilan la configuración y la plataforma predeterminadas que se definen en cada solución o proyecto.

En el cuadro Elementos para compilar, puede hacer clic en los puntos suspensivos (...) para abrir y utilizar el cuadro de diálogo Configuraciones y especificar los elementos que se van a generar.También puede especificarlos manualmente.

Cada configuración del cuadro Configuraciones para compilación debería tener el formato siguiente:

Configuración.|Plataforma

Debe reemplazar los siguientes marcadores de posición:

  • Configuración es un valor, por ejemplo, Debug, Release o Todas las config.

  • Plataforma es un valor, por ejemplo, Win32, x86, x64 o Any CPU.

Las configuraciones de la lista deben delimitarse con comas.

Por ejemplo, si desea compilar la configuración Debug y Release del proyecto de C#, especifique Debug|Any CPU, Release|Any CPU en el cuadro Configuraciones para compilación.

Los tokens que se usan para la configuración y la plataforma deben coincidir con los tokens que se definen en las propiedades de la solución o del proyecto de código.Si no coinciden, es posible que se produzcan resultados inesperados cuando se complete la compilación.

Especificar los agentes de compilación que procesan la compilación

Para especificar qué agentes de compilación se usan para procesar la compilación, expanda el nodo Advanced, expanda el nodo Agent Settings y, a continuación, especifique valores para los siguientes parámetros:

  • Filtro de nombres: puede filtrar los agentes de compilación que se usan para procesar esta definición de compilación escribiendo el nombre del agente en este campo.También puede especificar un conjunto de nombres mediante * y caracteres comodín de ?.Por ejemplo, puede escribir CI* para especificar cualquier agente cuyo nombre comience por los caracteres CI.Algunos de los agentes que coinciden con este criterio son CI, CI1 o CI_Agent2.

  • Filtro de etiquetas: especifique una o varias etiquetas para asegurarse de que esta compilación la ejecutarán únicamente los agentes de compilación que tengan etiquetas que coincidan.Aplique normalmente las etiquetas a algunos agentes de compilación para reservarlos para fines especiales.Por ejemplo, puede configurar un agente de compilación en una máquina de compilación diseñada para procesar las compilaciones de protección controlada.Puede aplicar la etiqueta "gated" a este agente de compilación.Por último, puede aplicar la etiqueta "gated" a la definición de compilación para que únicamente pueda procesarla el agente que tenga también esta etiqueta.Para especificar etiquetas, haga clic en el botón de puntos suspensivos (...).

    [!NOTA]

    El grupo de agentes de compilación disponibles para procesar esta compilación viene determinado por el controlador de compilación especificado para esta definición de compilación.Para modificar el controlador de compilación, haga clic en la pestaña Valores predeterminados de compilación, abra el menú Controlador de compilación y, a continuación, haga clic en un controlador de compilación.

  • Operador de comparación de etiquetas: en el menú, haga clic en uno de los siguientes valores:

    • MatchExactly: haga clic en este valor si desea que esta definición de compilación la procesen solo los agentes de compilación que tienen exactamente el mismo conjunto de etiquetas especificados en el cuadro Filtro de etiquetas.Si no especifica ninguna etiqueta, cualquier agente puede procesar esta definición de compilación.

      SugerenciaSugerencia

      Si hace clic en MatchExactly, se restringen los agentes disponibles para esta definición de compilación a aquellos que tienen el conjunto exacto de etiquetas en el campo de Filtro de etiquetas.

    • MatchAtLeast: haga clic en este valor si desea que esta definición de compilación la procese cualquier agente de compilación que tenga al menos el mismo conjunto de etiquetas que especificó en el cuadro de Filtro de etiquetas.Si no especifica ninguna etiqueta, solo los agentes que no tienen etiquetas pueden procesar esta definición de compilación.

Especificar límites de tiempo del agente de compilación

Para especificar los límites de tiempo, expanda el nodo Advanced, expanda el nodo Agent Settings y, a continuación, especifique los parámetros de la tabla siguiente.

Si desea...

Establezca este parámetro…

Siguiendo estas pautas...

Especificar el tiempo máximo permitido para que el agente de compilación procese la compilación

Tiempo máximo de ejecución

Escriba un intervalo de tiempo con el formato hh:mm:ss.Por ejemplo, se producirá un error de tiempo de espera en la compilación si especifica un valor de 04:30:15 y el agente de compilación no ha completado su trabajo después de 4 horas, 30 minutos y 15 segundos.Especifique el valor 00:00:00 si desea que el agente de compilación tenga tiempo ilimitado para procesar la compilación.

Especificar el tiempo máximo permitido para asignar la solicitud de compilación a un agente de compilación

Tiempo máximo de espera

Escriba un intervalo de tiempo con el formato hh:mm:ss.Por ejemplo, se producirá un error de tiempo de espera en la compilación si especifica un valor de 01:30:45 y la compilación no se asigna a ningún agente de compilación después de 1 hora, 30 minutos y 45 segundos.Especifique el valor 00:00:00 si desea que el controlador de compilación tenga tiempo ilimitado para encontrar un agente de compilación que procese esta definición de compilación.

Ejecutar pruebas automatizadas y analizar las pruebas de impacto

Puede diseñar la compilación para realizar una o varias ejecuciones de pruebas automatizadas y analizar el impacto de los cambios del código en las pruebas.Para obtener más información, vea Ejecutar pruebas en el proceso de compilación.

Especificar parámetros básicos del proceso de compilación

Normalmente, deberá modificar los parámetros del proceso de compilación del nodo Basic para completar correctamente algunos de los escenarios más habituales.

Si desea...

Establezca este parámetro…

Siguiendo estas pautas...

Realice una o varias ejecuciones de pruebas automatizadas

Pruebas automatizadas

Ejecutar pruebas en el proceso de compilación

Personalizar la convención que se usa para denominar las compilaciones completadas

Formato del número de compilación

Usted y su equipo pueden cargar datos útiles en el nombre de cada compilación completada.Para obtener más información, vea Trabajar con números de compilación.

Para personalizar este parámetro, puede escribir directamente el texto en este campo.Sin embargo, puede modificar el valor y mostrar los tokens disponibles haciendo clic en los puntos suspensivos (...) para abrir y utilizar el cuadro de diálogo Editor de formato de BuildNumber.En este cuadro de diálogo, haga clic en Macros para mostrar e insertar los tokens que desea usar.

Especificar si se va a limpiar el área de trabajo del agente de compilación antes de procesar la compilación y cómo va a hacerse

Limpiar área de trabajo

En este menú, haga clic en uno de los siguientes valores:

  • Seleccione Todos para eliminar todos los resultados y los archivos de código fuente existentes antes de que se procese la compilación.Use esta opción si desea que el proceso de compilación sea lo más exhaustivo posible a la hora de exponer los problemas del proceso de compilación.

  • Seleccione Resultados para eliminar todos los resultados existentes y mantener los archivos de código fuente que no han cambiado desde la compilación más reciente (realizando una operación tf get sin el modificador /all).

  • Seleccione Resultados para dejar todos los resultados existentes y mantener los archivos de código fuente que no han cambiado desde la compilación más reciente (realizando una operación tf get sin el modificador /all).

SugerenciaSugerencia
Si el proceso de compilación no requiere la limpieza adicional que la opción Todo realiza, puede reducir significativamente el tiempo necesario para ejecutar la compilación si especifica Ninguno (la opción más rápida) o Resultados.Sin embargo, es más probable que el equipo no note ciertos tipos de defectos, como los proporcionados durante la refactorización, si el área de trabajo no se limpia.

Especificar el nivel de detalle que desea para el registro de compilación

Nivel de detalle de registro

La información sobre las compilaciones es importante para el equipo, pero un proceso de compilación que registra demasiada información puede causar problemas.Entre estos problemas se incluyen el agotamiento del espacio del servidor y los recursos de la CPU, la reducción del rendimiento del servidor y la degradación de la experiencia del usuario en la ventana resultados de compilación en el equipo cliente.Puede controlar toda la información que debe procesar, almacenar y mostrar su implementación.Para obtener más información, vea Administrar información sobre las compilaciones y controlar el nivel de detalle.

Analizar el código para encontrar defectos comunes

Realizar análisis de código

En este menú, haga clic en uno de los siguientes valores:

  • Seleccione Según configuración para analizar cada uno de los proyecto de código en los que esta característica está habilitada.

  • Seleccione Siempre para analizar cada proyecto de código con independencia de si esta característica está habilitada en los proyectos de código.

  • Seleccione Nunca para omitir el análisis de código.

Para obtener más información, consulte uno de los temas siguientes:

Almacenar los símbolos para habilitar características, como la depuración histórica

Indizar orígenes y Ruta de acceso para publicar símbolos

Puede configurar la definición de compilación para que publique datos de símbolos con el fin de habilitar características, como la depuración histórica.Para obtener más información, vea Publicar datos de símbolos.

Especificar parámetros avanzados del proceso de compilación

Los parámetros de proceso de compilación proporcionados en el nodo Advanced son los parámetros que es necesario modificar para completar correctamente algunos de los escenarios menos habituales.

Si desea...

Establezca este parámetro…

Siguiendo estas pautas...

Especifique los valores del agente de compilación

Configuración del agente

Especificar los agentes de compilación que procesan la compilación, Especifique el agente Time Limits de compilación

Analizar el impacto de pruebas

Analizar el impacto de pruebas

Ejecutar pruebas en el proceso de compilación

Vincular cada compilación completada con todos los conjuntos de cambios que se incluyeron en el código, así como de sus elementos de trabajo asociados

Conjuntos de cambios y elementos de trabajo asociados

En la mayoría de los casos, el procedimiento recomendado es establecer este parámetro en True (valor predeterminado).Esto se cumple sobre todo en las compilaciones programadas (por ejemplo, una compilación nocturna), porque suelen usarse compilaciones programadas que se han completado correctamente para confirmar correcciones o ejecutar pruebas adicionales.

Cada definición de compilación mantiene su propio registro sobre qué conjuntos de cambios y elementos de trabajo están a la espera de asociarse con la siguiente compilación completada.Por ejemplo, el conjunto de cambios 382 se compila tanto en la Compilación A como en la Compilación B.La Compilación A se pone en cola y se completa correctamente.La Compilación B se pone en cola y no se realiza correctamente.El conjunto de cambios 382 está vinculado ahora con la compilación completada correctamente de la Compilación A y la compilación completada con errores de la Compilación B. El conjunto de cambios 382 no se va a vincular a la siguiente compilación completada de la Compilación A, aunque se vinculará a la siguiente compilación completada de la Compilación B.

Crear un elemento de trabajo cuando se produce un error en la compilación

Crear elemento de trabajo tras error

Establezca este parámetro en True si desea que el sistema cree un elemento de trabajo cuando se produce un error en la compilación.

Deshabilitar pruebas:

Deshabilitar pruebas:

Ejecutar pruebas en el proceso de compilación

Compilar una versión concreta del código fuente

Obtener versión

Especifique el valor de versionspec que identifica la versión que desea compilar.

Para obtener más información sobre versionspecs, vea Sintaxis de línea de comandos.

Etiquetar la versión de cada uno de los archivos que se compilaron en cada una de las compilaciones completadas

Etiquetar orígenes

Establezca este parámetro en True si desea que el sistema marque cada archivo de código fuente con una etiqueta.Mediante esta acción, su equipo podrá identificar con facilidad la versión de cada uno de los archivos incluidos en la compilación completada.

Validar el código con diagramas en capas

Argumentos de MSBuild

Incluya la siguiente cadena en este valor de parámetro: /:pValidateArchitecture=true.

Para obtener más información, vea Validar código con diagramas de capas.

Especificar los argumentos de la línea de comandos que se pasan a MSBuild

Argumentos de MSBuild

Si el proceso de compilación requiere que se pasen argumentos a MSBuild, escríbalos en el parámetro Argumentos de MSBuild.Para obtener más información, vea Referencia de la línea de comandos de MSBuild.

Especificar el valor de bits de la versión de MSBuild que se usa para procesar la compilación

Plataforma MSBuild

Especifique uno de los siguientes valores:

  • Especifique Auto si desea ejecutar MSBuild en el mismo valor de bits de CPU de Servicio de Team Foundation Build que está instalada en el agente de compilación.

  • Especifique X86 para procesar siempre esta compilación con la versión de 32 bits de MSBuild.

    Como Visual Studio se ejecuta como una aplicación de 32 bits, puede experimentar problemas si la compilación la procesa un agente de compilación que está ejecutando la versión de 64 bits de Servicio de Team Foundation Build.Si especifica X86, puede resolver este tipo de problemas.

  • Especifique X64 para procesar siempre esta compilación con la versión de 64 bits de MSBuild.

Si especifica este valor, debería asegurarse (usando, por ejemplo, una etiqueta como la que se explicó al comienzo de este tema) de que la compilación la procesa un agente de compilación que está hospedado en una máquina de compilación de 64 bits.De lo contrario, la compilación no se realizará correctamente.

Poner en cola una compilación privada

Ubicación de entrega privada

No especifique normalmente un valor para este parámetro en la definición de compilación.Para obtener más información sobre cómo poner en cola una compilación privada, vea Poner en cola una compilación.

Organizar los archivos de salida de la solución

Resultados de la compilación de la solución

Establezca este parámetro en TRUE si desea organizar los archivos de salida de la solución.