Cómo: Personalizar el grupo de elementos SolutionToBuild

Actualización: noviembre 2007

El archivo de proyecto de Team Foundation Build, TFSBuild.proj, se puede personalizar pasando propiedades y destinos a la compilación del grupo de elementos SolutionToBuild. Puede agregar o quitar también las soluciones que se van a generar en el grupo de elementos SolutionToBuild. Para obtener más información sobre el archivo TFSBuild.proj, vea Introducción a los archivos de configuración de Team Foundation Build.

Permisos necesarios

Para completar estos procedimientos, debe tener los permisos Administrar una generación y Administrar áreas de trabajo establecidos en Permitir. También debe tener los permisos Desproteger y Proteger establecidos en Permitir.

Editar el archivo de proyecto de compilación de Team Foundation

Para poder editar el archivo TFSBuild.proj, necesita desprotegerlo del control de código fuente.

Para editar el archivo TFSBuild.proj

  1. En el menú Ver, elija Otras ventanas y, a continuación, haga clic en Explorador de control de código fuente.

  2. En el Explorador de control de código fuente, expanda el proyecto de equipo en el panel Carpetas y seleccione TeamBuildTypes.

  3. Para obtener la última versión de TFSBuild.proj, haga clic con el botón secundario del mouse en la carpeta TeamBuildType y, a continuación, haga clic en Obtener la última versión.

    De esta forma, los archivos podrán ser desprotegidos para editarlos.

  4. En el panel de vista, haga doble clic en el nombre de la definición de compilación que desea modificar, haga clic con el botón secundario del mouse en TFSBuild.proj y, a continuación, haga clic en Desproteger para editar. En el cuadro de diálogo Desproteger, seleccione Ninguno: permitir la desprotección compartida y, a continuación, haga clic en Desproteger.

    Aparece una marca de verificación roja junto al archivo TFSBuild.proj, que indica el estado de su control de código fuente.

  5. Haga doble clic en el archivo TFSBuild.proj para abrirlo en el editor XML de Visual Studio.

Pasar propiedades al grupo de elementos SolutionToBuild

Team Foundation Build incluye dos propiedades reservadas que puede utilizar para personalizar las definiciones de compilación:

  • CustomPropertiesForClean pasa los valores personalizados a cada solución cuando Team Foundation Build llama al destino Clean.

  • CustomPropertiesForBuild pasa los valores personalizados a cada solución cuando Team Foundation Build llama a su destino predeterminado (normalmente Build).

Para pasar propiedades al grupo de elementos SolutionToBuild

  1. Busque la etiqueta <SolutionToBuild> en el archivo TFSBuild.proj.

  2. Para agregar una propiedad personalizada al destino predeterminado, escriba lo siguiente entre las etiquetas <SolutionToBuild> y </SolutionToBuild>. Por ejemplo:

    <SolutionToBuild Include="$(SolutionRoot)\HelloWorld.sln">
      <CustomPropertiesForBuild>
        Context=TeamBuild;RootDirectory=$(SolutionDir)
      </CustomPropertiesForBuild>
    </SolutionToBuild>
    

    Este código XML hace que la propiedad de compilación RootDirectory apunte a la propiedad SolutionDir predeterminada.

    Utilice la misma sintaxis para pasar propiedades personalizadas a la propiedad CustomPropertiesForClean.

  3. A título opcional, puede pasar también propiedades personalizadas a elementos SolutionToBuild individuales especificándolas en metadatos.

    Por ejemplo:

    <SolutionToBuild Include="$(SolutionRoot)\HelloWorld.sln">
      <Properties>
        OutDir=$(BinariesRoot)\$(Solution)\$(Platform)\$(Configuration\
      </Properties>
    </SolutionToBuild>
    

    Este código XML especifica el directorio de resultados de la definición o definiciones de compilación asociadas a este archivo TFSBuild.proj.

    Nota:

    Al agregar las etiquetas CustomPropertiesForBuild y CustomPropertiesForClean aparecen advertencias de validación del esquema XML en Visual Studio. Puede omitir sin ningún riesgo esas advertencias.

Agregar y eliminar soluciones en el grupo de elementos SolutionToBuild

Puede editar el grupo de elementos SolutionToBuild para agregar o quitar las soluciones que va a generar la definición o definiciones de compilación asociadas al archivo de proyecto de Team Foundation Build, TFSBuild.proj.

Para agregar o quitar las soluciones que se van a generar

  1. Busque la etiqueta <SolutionToBuild> en el archivo TFSBuild.proj.

    Si la definición de compilación se establece para generar una única solución, la entrada SolutionToBuild es similar al código XML siguiente:

    <ItemGroup>
    <SolutionToBuild Include="$(BuildProjectFolderPath)\path\MySolution.sln" />
      <Targets></Targets>
      <Properties></Properties>
    </SolutionToBuild>
    </ItemGroup>
    
  2. Para agregar otra solución, agregue otro conjunto de etiquetas <SolutionToBuild></SolutionToBuild> detrás de la etiqueta de apertura <ItemGroup> y delante de la etiqueta de cierre </ItemGroup>.

    <SolutionToBuild Include="$(BuildProjectFolderPath)\path\MySolution.sln" />
      <Targets></Targets>
      <Properties></Properties>
    </SolutionToBuild>
    <SolutionToBuild Include="$(BuildProjectFolderPath)\path\MySecondSolution.sln" />  <Targets></Targets>  <Properties></Properties></SolutionToBuild>
    
  3. Para quitar una solución, quite las etiquetas <SolutionToBuild></SolutionToBuild> y todo lo que haya entre las etiquetas correspondientes a la solución que ya no desea generar.

Llamar a un destino personalizado en el grupo de elementos SolutionToBuild

Puede llamar a destinos personalizados de elementos SolutionToBuild individuales especificándolos en metadatos.

Para llamar a un destino personalizado en el grupo de elementos SolutionToBuild

  1. Busque la etiqueta <SolutionToBuild> en el archivo TFSBuild.proj.

  2. Utilice la sintaxis siguiente para llamar a un destino y pasar propiedades.

    <SolutionToBuild Include="$(BuildProjectFolderPath)\path\MySolution.sln">
      <Targets>MyCustomTarget1;MyCustomTarget2</Targets>
      <Properties>Property1=Value1;PropertyTwo=Value2</Properties>
    </SolutionToBuild>
    

    Este código XML llama a los destinos MyCustomTarget1 y MyCustomTarget2 y pasa las propiedades Property1 y Property2.

Vea también

Tareas

Cómo: Crear una definición de compilación

Otros recursos

Propiedades, tareas y destinos de Team Foundation Build