Proyecto VS2017 de comstackción con servidor de comstackción TFS 2012

Tenemos un servidor local TFS 2012 y un servidor de comstackción. Estamos en el proceso de actualizar a VS y TFS 2017. En este momento, existe la solicitud de configurar otro servidor de comstackción que nos permita construir nuevos proyectos de 2017 desde el servidor TFS existente. Creé un nuevo servidor de comstackción e instalé los servicios de comstackción de TFS 2012 en él, así como VS2017. Creé una nueva definición de comstackción, pero no se comstack y los errores muestran cosas como los cambios de syntax para 2017 que no son válidos en 2012. ¿Cómo puedo configurar esto para comstackr el proyecto contra el VS2017 instalado?

Las versiones anteriores de Visual Studio instalaron msbuild en C:\Program Files (x86)\MSBuild\\bin y aparentemente la actividad RunMSBuild usó ToolVersion + the ToolArchitecture para calcular esta ruta.

VS 2017, en cambio, lo instala C: \ Archivos de progtwig (x86) \ Microsoft Visual Studio \ 2017 \ Enterprise \ MSBuild \ 15.0 \ bin y el RunMSBuild ya no puede calcular la ruta correcta. No puede usar el antiguo DefaultTemplate11.1xaml para integrarlo con VS2017.

Para hacer que esto funcione, puede intentar modificar TFSBuildServiceHost.exe.config y debe tener una versión de VS 2013 o VS 2015 instalada en el servidor de comstackción para que esto funcione. Paso más detallado, siga la respuesta de Jonesy2488 en este enlace: Cómo hacer que VS 2017 trabaje con TFS 2017 XAML Builds


Además, XAML Build está en desuso en TFS 2017 y no estará disponible en la próxima versión de TFS (2018). VSTS ya no los soporta.

Estoy buscando el controlador de comstackción XAML alojado. ¿A donde se fué?

El controlador de comstackción XAML alojado ya no es compatible. Las cuentas creadas a partir de abril de 2016 no tienen acceso a ella. Planeamos eliminar el controlador de comstackción XAML alojado de todas las cuentas, posiblemente hasta marzo de 2017.

Fuente

Ya que vas a actualizar y usar TFS2017. Le recomendamos encarecidamente que convierta sus comstackciones a vNext Build para acceder a algunas nuevas tecnologías y soporte. Para más información, consulte ¿Por qué debería dejar las comstackciones XAML?

Gracias a esta publicación, pude usar la integración continua de TFS 2012 con el servidor de comstackción que construye la syntax C # 6 usando Visual Studio 2017. Esperamos que esto ahorre a la siguiente persona algún tiempo al tratar de resolverlo.

Aquí está la lista de cosas que he cambiado para que TFS 2012 construya la syntax de c # 6. En la máquina con el agente de comstackción, instale vs 2017 enterprise, en la página de configuración de la instalación, asegúrese de que MS Build esté seleccionado introduzca la descripción de la imagen aquí

Edite la definición de comstackción y asegúrese de que el argumento de MSBuild sea /tv:15.0 /p:GenerateBuildInfoConfigFile=false /p:VisualStudioVersion=15.0

introduzca la descripción de la imagen aquí

Verifique la plantilla que usa la definición de comstackción y modifíquela, vaya al explorador de control de origen, ingrese al proyecto del equipo y en BuildProcessTemplate. introduzca la descripción de la imagen aquí

Debería haber 2 acciones que digan Ejecutar MSBuild para Proyecto. Debe cambiar las dos propiedades de su trayectoria para que apunten a la carpeta principal msbuild.exe en el servidor de comstackción. En mi caso, el servidor de comstackción es una máquina de 32 bits, por lo que la ruta a la carpeta Bin no tiene (x86) al lado de Archivos de progtwig, debe verificar su servidor de comstackción para ingresar la ruta correcta aquí. introduzca la descripción de la imagen aquí Una vez que haya realizado los cambios, debe guardar el xaml y registrarlo.