martes, 25 de septiembre de 2012

Cómo hacer funcionar un servidor de compilación de TFS 2010

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:

image

Otro que nos puede también aparecer (este relacionado con la compilación en 32 ó 64 bits):

image

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

  1. Install the Microsoft Windows SDK. 
  2. Install Visual Studio 2010. 
  3. Manually set the above registry key to the correct location. 
  4. 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:

image

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.

jueves, 20 de septiembre de 2012

Error al publicar una aplicación mediante ClickOnce con Visual Studio 2010

Una rápida, que me acaba de pasar y que si no lo apunto, la siguiente vez que me pase lo mismo estoy todo el día mirando por qué.

El problema

Abrimos una solución con Visual Studio 2010, vamos a las propiedades del proyecto que queremos publicar mediante ClickOnce, y le damos al botón “Publish” (o al “Publish Wizard”, realmente sucede lo mismo); resultado de la publicación:

image

¿Cómo?

A ver. Compilamos la solución y compila bien, volvemos a compilar todos los componentes y compilan bien, intentamos hacer la compilación y… el mismo error.

La solución

Voy a ir directamente a la solución, ya que no tengo explicación para este comportamiento:

1.- En el Solution Explorer, localizamos el proyecto.

2.- Sobre el proyecto, clic con el botón derecho del ratón, “Publish”

image

¿El resultado?

image

Que alguien me lo explique, por favor.