7

He estado leyendo http://vishaljoshi.blogspot.com/2010/11/team-build-web-deployment-web-deploy-vs.html y https://michaelbaylon.wordpress.com/2011/04/13/managing-sql-scripts-and-continuous-integration/ etc ... en la implementación automatizada y etc integración continua, pero no de lo que parece hablar de la implementación automatizada en un ASP clásico entorno y no se puede hacer una correcta IC a menos que se inicie en una implementación automatizada.asp clásico - Cómo automatizar la implementación - en el entorno de integración continua

¿Puede MSDeploy implementar un sitio web clásico de asp? Si no ... ¿es mejor simplemente escribir un script de compilación que copie todos los archivos en la carpeta correcta y luego inicie IIS? Lo hice usando msbuild y la tarea de extensión robocopy msbuild. Pero entonces, ¿cómo se manejan los diferentes entornos (QA, dev, staging, producción) no hay configuración web para poner las diferentes cadenas de conexión, etc. ... supuestamente msbuild es consciente de la configuración ... pero cómo funciona eso cuando no hay web config?

Así que con todas estas preguntas estoy luchando para avanzar realmente con la creación de una secuencia de comandos de implementación/módulo/exe para nuestro sitio web clásico asp. ¿Alguien tiene alguna respuesta/recurso/preguntas adicionales a las que puedan dirigirme en la dirección?

+0

La parte clave aquí que me parece que no puede trabajar a través ... pero sé que la gente lo hace ... y yo estoy luchando encontrar documentación para ... es con un sitio web asp cómo puedo usar un script de compilación de ms para empaquetarlo en 1 de 3 entornos con un clic de botón o dependiendo del parámetro proporcionado. Lo segundo es que una vez que tengo una secuencia de comandos de desarrollo para una aplicación y luego de la implementación tengo algunas tablas de base de datos o modificaciones que deben ocurrir ... esto solo ocurrirá para esta implementación ... no la siguiente ... porque ese es un boleto diferente ... ¿cómo lo manejo? –

Respuesta

0

MSDeploy puede desplegar cualquier cosa que pueda vivir en IIS. Puede crear un paquete desde el sitio web existente y examinarlo para ver qué se empaquetó. Debería poder usar eso para determinar cómo empaquetar su sitio desde las fuentes.

Incluso debería poder crear un proyecto de Visual Studio a partir de sus fuentes para que pueda usar el Pipeline de publicación web directamente. El hecho de que no haya nada allí para compilar no debe impedir que especifique que sus archivos .ASP son archivos de contenido.

+0

Como mencioné anteriormente intenté empaquetar el sitio web existente y no se incluyó ninguna de las cosas de asp. No obstante, no sé por qué? ¿Estás diciendo simplemente crear un proyecto vacío en Visual Studio y agregar todos los archivos a ese proyecto ... y luego escribir un script de compilación alrededor de ese proyecto? Si es así ... una vez más, ¿cómo lo creo para que funcione con los diferentes entornos ... las cadenas de conexión, etc. Y no entiendo cómo incluiría un cambio de base de datos por única vez? ¿Qué sucede la próxima vez que implementamos ... todavía está en el guión? ¿Debo cambiarlo cada vez para cada boleto? –

+0

No ha dicho _como_ ha intentado empaquetar el sitio existente. Estoy diciendo que una forma de hacerlo sería crear el proyecto vacío. No necesitarás un script de compilación. La canalización de publicación web normal debería "funcionar". No he abordado los cambios en la base de datos. Yo uso proyectos de bases de datos para eso. –

+0

Lo siento, todavía no lo he intentado, intentaré crear un proyecto cuando regrese al trabajo el lunes. Con la canalización regular ... ¿cómo funciona la configuración web transforma trabajar con la tubería de despliegue. Necesitaré un script de compilación porque necesitaremos ejecutar pruebas automatizadas, etc. antes de la implementación. Supongo que no estoy muy seguro de lo que estoy buscando o por dónde empezar con respecto a cómo configurar estos parámetros para que elija dónde implementar automáticamente ... –

0

Pagar usando cruisecontrol.net, lo usamos para nuestras implementaciones automatizadas junto con msbuild y funciona muy bien. Somos una tienda .Net pero básicamente es lo mismo. Cruise Control puede ejecutar scripts y maneja las transformaciones web.config/global.asa bastante bien. Mientras puedas guiarlo, el control de crucero podría manejarlo.

Según su entorno de desarrollo, es posible que pueda conectarlo al cruisecontrol. Usamos TFS y se integra muy bien, así que cuando verificamos los elementos en nuestras diferentes ramas (Dev, Main, Stage) despliega automáticamente el sitio en la ubicación adecuada.

Implementando en nuestro entorno de producción utilizamos MSbuild para mover el código. Como está en otra ubicación de red, necesitamos algo que pueda salir y hacer las actualizaciones necesarias del servidor.

http://cruisecontrol.sourceforge.net/

+0

Robert, nuestro equipo de desarrollo usa actualmente team city ... pero una vez más, incluso si cambiamos ... ¿cómo podría el control de crucero ayudar con los diferentes entornos y con los cambios de base de datos de una vez? –

+0

cruise control es solo la pieza de software que usamos para iniciar nuestros scripts de compilación. Lo bueno del control de crucero es que puedes escribir un tipo de script y puede ejecutarlo con parámetros e integrarlo en tu entorno de desarrollo para ver cuándo se registra un elemento y ejecutar el proceso de despliegue contra la sucursal. Así que tenemos 3 entornos configurados y cuando ingresa a cualquiera de ellos, el control de crucero inicia la implementación y envía un correo electrónico con el estado completo. Puede configurar un script para implementar la base de datos, no lo hacemos, pero hemos considerado hacerlo. – Robert

1

Web Deploy (http://www.iis.net/download/WebDeploy) es el camino a seguir. Solo tiene que personalizar el script de implementación para diferentes entornos.

Usted puede encontrar este Enlaces útiles:
- http://msdn.microsoft.com/en-us/library/ms241740.aspx
- "Build" Classic ASP with TFS 2010

+0

Gracias avakharia ... Leí los enlaces que me proporcionó, pero no sabía cómo encontrarlos útiles. Traté de adjuntar mi navegador e inetinfo a mi depuración ... pero no pude entender cómo eso realmente me ayudó a trabajar con las secuencias de comandos asp en Visual Studio. Todo lo que obtuve fue dissembly de ntdll.dll. Usted y otros, incluido el video en el enlace de descarga, indican que msdeploy puede implementar un sitio web asp. Hice lo que se sugirió e intenté exportar la aplicación para ver lo que se habría empaquetado ... pero ninguno de los archivos asp se había empaquetado ... ¿o bien hice algo mal o no es compatible? –