Configurar Team Foundation Server para la implementación web

por Jason Lee

En este tutorial se muestra cómo configurar Team Foundation Server (TFS) 2010 para compilar soluciones e implementar contenido web en varios entornos de destino. Esto incluye escenarios de integración continua (CI), donde se implementa contenido automáticamente cada vez que un desarrollador realiza un cambio. También puede incluir escenarios de desencadenador manuales, donde un administrador puede querer desencadenar la implementación de una compilación específica en un entorno de ensayo una vez que la compilación se haya comprobado y validado en el entorno de prueba. Los temas de este tutorial le guiarán por todo el proceso de configuración, incluyendo lo siguiente:

  • Cómo crear un nuevo proyecto de equipo en TFS.
  • Cómo agregar contenido al control de código fuente.
  • Cómo configurar un servidor de compilación para admitir CI e implementación.
  • Cómo crear una definición de compilación que incluya lógica de implementación.
  • Cómo configurar de permisos para la implementación automatizada.

Para obtener una traducción italiana de estos tutoriales, visite http://www.lucamorelli.it.

En este tutorial se asume que ha instalado TFS 2010 y ha creado una colección de proyectos de equipo como parte del proceso de configuración inicial. La Guía de instalación de Team Foundation para Visual Studio 2010 proporciona instrucciones completas sobre estas tareas.

Context

Esto forma parte de una serie de tutoriales basados en los requisitos de implementación empresarial de una empresa ficticia denominada Fabrikam, Inc. Esta serie de tutoriales utiliza una solución de muestra —la solución Contact Manager (Administrador de soluciones)— para representar una aplicación web con un nivel de complejidad realista, que incluye una aplicación ASP.NET MVC 3, un servicio Windows Communication Foundation (WCF) y un proyecto de base de datos.

El método de implementación que constituye el núcleo de estos tutoriales se basa en el enfoque del archivo de proyecto dividido descrito en Comprensión del proceso de compilación, en el que el proceso de compilación está controlado por dos archivos de proyecto: uno que contiene las instrucciones de compilación que se aplican a todos los entornos de destino y otro que contiene los ajustes de compilación e implementación específicos del entorno. En tiempo de compilación, el archivo de proyecto específico del entorno se combina en el archivo de proyecto independiente del entorno para formar un conjunto completo de instrucciones de compilación.

Información general del escenario

El escenario de alto nivel de estos tutoriales se describe en Implementación web empresarial: Información general sobre escenarios. Se recomienda revisar este tema antes de empezar a trabajar en este tutorial.

Cómo usar este tutorial

Si es la primera vez que realiza las tareas descritas en este tutorial, o si desea seguir los ejemplos mediante la solución de muestra, debe trabajar en los temas del tutorial en orden. Como alternativa, puede usar temas individuales como guía para tareas específicas. Este tutorial incluye estos temas:

  • Crear un proyecto de equipo en TFS. Un proyecto de equipo es la unidad principal para el control de código fuente, la administración de procesos y la compilación en TFS. Debe crear un proyecto de equipo para poder agregar contenido al control de código fuente o crear definiciones de compilación.
  • Agregar contenido al control de código fuente. Una vez que haya creado un proyecto de equipo, puede empezar a agregar contenido al control de código fuente. Deberá agregar los proyectos y soluciones, junto con las dependencias externas, antes de empezar a configurar compilaciones.
  • Configurar un servidor de compilación de TFS para la implementación web. Si desea compilar el contenido del proyecto de equipo, deberá configurar un servidor de compilación. En la mayoría de los casos, debe hacerse en una máquina independiente de la instalación de TFS. Para configurar un servidor de compilación, debe instalar y configurar el servicio de compilación TFS, instalar Visual Studio 2010, crear controladores de compilación y agentes de compilación, instalar los productos o componentes que el código necesita para compilarse correctamente e instalar la Herramienta de implementación web (Web Deploy) de Internet Information Services (IIS).
  • Crear una definición de compilación que admita la implementación. Antes de empezar a poner en cola o desencadenar compilaciones en TFS, debe crear al menos una definición de compilación para el proyecto de equipo. La definición de compilación define todos los aspectos de la compilación, incluidos los elementos que deben incluirse en la compilación, lo que debe desencadenar la compilación y dónde debe enviar Team Build las salidas de la compilación. Puede configurar una definición de compilación para ejecutar archivos de proyecto personalizados de Microsoft Build Engine (MSBuild), lo cual permite incluir lógica de implementación en las compilaciones automatizadas.
  • Implementar una compilación concreta. En muchos escenarios, querrá implementar una compilación específica, en lugar de la compilación más reciente, en un entorno de destino. En este caso, puede configurar una definición de compilación que implemente contenido desde una carpeta desplegable específica.
  • Configurar permisos para la implementación de Team Build. Si el servicio de compilación va a implementar contenido como parte de un proceso de compilación automatizado, debe conceder varios permisos a la cuenta de servicio de compilación en cualquier servidor web de destino y servidores de bases de datos.

Tecnologías clave

Este tutorial se centra en cómo usar estos productos y tecnologías para admitir la compilación automatizada y la implementación web:

  • Visual Studio Team Foundation Server 2010
  • Team Build y MSBuild
  • Web Deploy

El tutorial también se centra en el uso de Windows Server 2008 R2, IIS 7.5, SQL Server 2008 R2, ASP.NET 4.0 y ASP.NET MVC 3.

Otros tutoriales de esta serie

Esto forma parte de una serie de cinco tutoriales sobre la implementación web a escala empresarial. Estos son los otros tutoriales de la serie:

  • Implementación de aplicaciones web en escenarios empresariales. Este contenido introductorio proporciona el fondo contextual de la serie de tutoriales. Describe el escenario del tutorial y muestra cómo las tareas y los tutoriales descritos en toda la serie encajan en un proceso más amplio de Administración del ciclo de vida de las aplicaciones (ALM).
  • Implementación web en la empresa. En este tutorial se proporciona una introducción conceptual a los archivos de proyecto de MSBuild, Web Publishing Pipeline (WPP), Web Deploy y otras tecnologías relacionadas. Explica cómo puede usar estas herramientas conjuntamente para administrar procesos de implementación complejos.
  • Configurar entornos de servidor para la implementación web. En este tutorial se describe cómo configurar servidores de Windows para admitir varios escenarios de implementación, incluida la implementación remota de paquetes web mediante el servicio de agente de implementación web (el agente remoto) o la implementación remota de controlador y base de datos remota de Web Deploy. Proporciona instrucciones sobre cómo elegir el método de implementación adecuado para su propio entorno y describe cómo usar el marco de granja de servidores web (WFF) para replicar aplicaciones web implementadas en todos los servidores web de una granja de servidores.
  • Implementación web avanzada de empresa. En este tutorial se describe cómo realizar varias tareas de implementación más avanzadas, como personalizar las implementaciones de bases de datos para varios entornos, excluir archivos y carpetas de la implementación y desconectar las aplicaciones web durante el proceso de implementación.