Solución gratuita de automation de compilation de Visual Studio

Estoy buscando una solución de automation de compilation para utilizarla con un espacio de solución de Visual Studio que contenga varios proyectos de types de fuente mixtos (principalmente Win32 C ++ y C #). Además, todo el código se almacena en un repository de Subversion. Por lo tanto, debe abarcar desde la extracción de una copy de trabajo del código hasta la compilation de la fuente y la construcción de los files de configuration.

Los requisitos son los siguientes:

Absoluto debe tener:

  • GRATIS
  • GUI fácil de usar (ya puedo escribir un montón de scripts de NMake … esto es lo que no quiero hacer)
  • Integración de Subversion (al less ser capaz de desplegar el último código)
  • Compatibilidad con varios lenguajes de origen (es una cuestión de importancia ya que está construida con VS al final)
  • Automatización de extremo a extremo (construcción de un clic)
  • Perfiles de compilation (es decir, Intermediario frente a versión)

Cosas que me gustaría

  • Buscar y replace el file de origen (para incrementar automáticamente la información de la versión en los files de encabezado)
  • Informes de correo electrónico
  • Creaciones automáticas después de que Subversion se comprometa
  • interfaz web
  • Integración de FTP
  • Posibilidad de generar automáticamente nombres de files de compilation con las cadenas de versión adecuadas

Cosas que no necesito

  • Soporte de testings unitarias
  • Integración de seguimiento de errores

NAnt y CruiseControl.Net hacen todo esto, excepto que no tiene una GUI para crear las secuencias de commands de compilation. La GUI que tiene es una interfaz web que le permite supervisar / forzar construcciones, así como una aplicación de bandeja de sistema que hace lo mismo. Si la creación de GUI de los scripts es un requisito realmente grande, el constructor final es una de sus mejores opciones, sin embargo, le costará dinero. No creo que vayas a get la GUI en este espacio de forma gratuita.

¿Has considerado usar MSBuild? Viene gratis con .NET framework.

Requeriría una pequeña cantidad de encoding. Por ejemplo, tendría que crear una nueva class .net (derivada de Tarea) que anule la function Ejecutar, luego llamar a SVN para actualizar su código fuente. Pero la mayor parte de la configuration estaría en un file build.xml donde puede especificar los nombres de los files de la solución y las diferentes configuraciones.

Una introducción razonable está aquí: MSBuild

Entiendo por qué quieres hacer esto a través de una GUI, pero en mi humilde opinión la flexibilidad que obtienes al utilizar MSBuild vale la pena el esfuerzo extra de configurarlo, sin ser tan complejo como escribirlo completamente desde cero en otro lenguaje de scripting.