Pregunta

Estoy buscando algunas recomendaciones para hacer la construcción del proyecto y el despliegue automáticamente.

Nuestra configuración actual de desarrollo utiliza ASP.NET, SVN, CCNET y un script de MSBuild para la creación de servidores prog. Estaba pensando en cambiar a Cruise en lugar de CCNET aunque no estoy seguro de si eso me da extra de cualquier cosa que no tengo ya.

Lo que me gustaría es para automatizar el proceso de construcción automatizado después de una se hace para actualizar el sitio en vivo con los nuevos cambios. actualizaciones del sitio pueden incluir actualizaciones de la web de base, así como actualizaciones de clientes que pueden ser de código y / o bases de datos cambios para las necesidades del proceso a ser lo suficientemente flexible para que pueda manejar esas situaciones.

Una de mis fuentes de inspiración para este vino de esta vídeo, así como las interminables horas que realizan actualizaciones cada mes.

¿Fue útil?

Solución

proyectos personales más pequeños o nofollow, yo recomendaría usar algo así como la libre (y excelente) TeamCity por JetBrains. Unidad de automatización de pruebas, integración continua, y las reglas de lo que ocurre después de una compilación (incluyendo moverla de un lado a diferentes lugares).

Para equipos más grandes , he encontrado realmente un poco de automatización de construcción en forma de tareas de MSBuild personalizados y Robocopy funciona mejor. Esta buena combinación entre la promoción manualmente construye entre los ambientes y el uso de MSBuild y Robocopy para automatizar partes de este proceso crea las pausas entre los ambientes limpios (con muy pocos 'Uy no me refería a empujar que no hay errores). También nos permite tener control de calidad antes de promover construye opinión.

Actualización 07/31/2014:

He usado plantillas de generación personalizada TFS con éxito. Son un poco complicado, pero se puede hacer bastantes cosas interesantes con ellos.

Para los proyectos de código abierto (como bibliotecas NuGet) alojado en GitHub, no creo que se pueda mejorar AppVeyor . Tengo algunos proyectos como Mailchimp.NET que tienen acumulación completa y NuGet automatización de despliegue.

Otros consejos

Los sonidos como las dos funciones principales para la implementación de los cambios de código es: 1. Copia de archivos y 2. Ejecución de DB script cambia. Si nos fijamos en el uso de Tareas MSBUILD comunidad hay un montón de tareas de construcción útiles que pueden ayudar en el camino. SQLExecute y Robocopy sonido como si fuera a ser todo lo que se necesita para usar. Para ello sería necesario que la modificación de los archivos de proyecto para extender su comportamiento acumulación, pero una vez hecho esto usted sería capaz de "guión" fuera de la parte manual de lo que se está haciendo.

He utilizado Nant en el pasado con mucha suerte para tareas similares. Puede patear va a basar su construcción automatizado. ( http://nant.sourceforge.net/ )

Si quieres algo más amplio se puede extraer Wix ( http://wix.sourceforge.net/)

Ahora estás realmente seguro de que todo lo que un Autmatic patadas construir fuera que desea actualizar el sitio en vivo? ¿O quiere decir que inicio a una acumulación, utilizando su herramienta cc, y entonces se genera una acumulación de ir a vivir?

no me gustaría tener la actualización del sitio vivo cuando alguien registró una nueva versión de un archivo.

Sus actualizaciones de la base será probablemente el aspecto más desafiante. Sin embargo, siempre y cuando lo que se comprueba en la actualización databvase es un script de cambio, no es malo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top