Sin morir en el intento
Situación inicial
Pongamos que tenemos una instalación nueva, limpia, de un sistema TFS 2010, con su servidor de Base de Datos, su servidor de TFS 2010, y ahora queremos instalar una máquina para las compilaciones.
Sin problemas ¿no? instalamos la parte del servicio de Builds desde el DVD de TFS 2010 y listo (bueno, listo no, primero lo tenemos que enganchar al servidor de TFS, pero hasta aquí es tal y como pone en toda la documentación de Microsoft)
El problema
Una vez instalado y configurado, generamos una nueva definición de Build, así como lo hemos hecho siempre, sin nada especial, y la lanzamos. El resultado:
Otro que nos puede también aparecer (este relacionado con la compilación en 32 ó 64 bits):
Y por supuesto alguno más, como el mensaje del “Tracker.exe” del que ya hablé aquí.
[modo enfado ON]
Puedo entender que cuando montamos un sistema de compilación existan determinados tipos de proyectos que de partida no podamos compilar sin alguna configuración ‘especial’ (por ejemplo los de Sharepoint) o que si el proyecto utiliza componentes de terceros haya que realizar alguna operación especial, pero ¿cómo es posible que no sea capaz de compilar un mini proyecto de prueba sin nada especial?
O por lo menos, en la documentación que lo avisen: “Instalar únicamente el servidor de Compilaciones NO permite compilar proyectos”.
[modo enfado OFF]
En fin, es lo que hay. ¿cómo lo solucionamos?
La solución
El mensaje de error de la compilación nos da varias opciones para solucionar el problema (en este caso el del “resgen.exe”)
- Install the Microsoft Windows SDK.
- Install Visual Studio 2010.
- Manually set the above registry key to the correct location.
- Pass the correct location into the "ToolPath" parameter of the task.
Vamos a ver, si es obligatorio tener instalado algún SDK o el Visual Studio, ¿por qué no lo dicen en ningún sitio? Que no lo digo por no instalar, lo digo por la cara de tonto que se te queda…
En mi caso, lo que mejor me venía era instalar el SDK de Windows, en concreto “Microsoft Windows SDK for Windows 7 and .NET Framework 4”
Una vez instalado, ya compila correctamente.
Nota mental
Es muy posible que al intentar compilar un proyecto web aparezca el siguiente mensaje:
Esto es porque no hemos instalado el Visual Studio 2010, para solucionarlo sin necesidad de instalar este producto, basta con instalar el Team Explorer en el servidor de Compilación.
De hecho, en muchas páginas que he consultado para estos problemas recomiendan instalar Visual Studio en la máquina de compilación, que además no consume licencia… Igual es lo más fácil.