c++ - tipos - ¿Existe una granja de compilación para verificar aplicaciones de código abierto contra diferentes sistemas operativos?
software libre ventajas y desventajas (4)
Tengo una aplicación de código abierto y la tengo trabajando en Windows, Linux y Macintosh (está en C ++ y está construida con gcc). Solo lo he probado en algunos sabores diferentes de Linux, así que no sé si se compila y se ejecuta en todas las versiones de Linux diferentes. ¿Hay algún lugar donde pueda cargar mi código y probarlo en varios sistemas diferentes, como otros sabores de Linux y cosas como Solaris, FreeBSD y otros sistemas operativos?
Lo que sería genial es si puedo conectarlo directamente a mi repositorio svn y tomar el código más reciente y luego devolverme cualquier error de compilación generado y el sistema operativo con el que tenía un problema.
Me encantaría saber que compila, ya que es una aplicación basada en GUI, así que no esperaría que se ejecutara y probara.
Eche un vistazo al servicio de compilación OpenSuSE , incluye una variedad bastante amplia de distribuciones Linux (no solo SuSE / OpenSuSE).
Desde el punto de vista del software, también hay buildbot ( sitio del proyecto sourceforge ), que se puede usar para configurar su propio servidor de compilación / integración continua. Esto se sugirió y se consideró que se usa para el desarrollo de gcc (como se menciona en la página wiki de la granja de compilación de gcc publicada anteriormente).
Si planea comercializar su producto de código abierto, puede considerar nuestro Parabuild. Le permite ejecutar un conjunto de compilaciones en múltiples plataformas y máquinas en paralelo . La construcción será exitosa solo si todas las construcciones específicas de la plataforma tienen éxito.
Hay algunas opciones, pero no parece haber muchos (¿alguno?) Servicios gratuitos como este, lo que no es sorprendente teniendo en cuenta la cantidad de esfuerzo y los recursos que requiere. Sourceforge solía operar una granja de compilación como la que describe, pero cerró hace un año. Puede ver algunos de los siguientes. Si está inclinado a pagar por un servicio o hacer suyo, algunos de estos enlaces pueden ser útiles. Si solo está buscando una granja de compilación / compilación de código abierto que cubra múltiples plataformas, parece que no ha tenido suerte.
Servicio de compilación OpenSuse
Mencionado por Ted primero, vale la pena repetirlo, solo para Linux actualmente, pero admite varias distribuciones.
GCC Compile Farm
Principalmente enfocado en probar compilaciones para GCC pero también aloja algunos otros proyectos como coLinux, BTG BitTorrent client, ClamAV y otros. Puede ser algo que pueda aprovechar, aunque no veo qué SO están en la granja de compilación (contiene al menos Linux y Solaris basados en las notas de la página).
BuildLocker
BuildLocker es una solución de integración continua basada en web para proyectos Java y .NET. BuildLocker es una máquina de creación virtual dedicada que ayuda a los equipos a encontrar errores más temprano en el ciclo de desarrollo, ahorrando tiempo y dinero. BuildLocker administra construcciones automáticas programadas de código fuente en su repositorio de ProjectLocker Source Control. Simplemente verifique el código fuente y las compilaciones programadas validan la integridad del código. BuildLocker incluso puede ejecutar pruebas automatizadas y puede avisarle cuando falla una prueba.
CruiseControl
CruiseControl es un marco para un proceso de construcción continuo. Incluye, entre otros, complementos para notificaciones por correo electrónico, Ant y diversas herramientas de control de origen. Se proporciona una interfaz web para ver los detalles de las versiones actual y anterior.
Nota interesante, CruiseControl es utilizado realmente por el equipo de desarrollo de para pruebas de construcción automatizadas también, según el podcast.
Hudson
Hudson supervisa las ejecuciones de trabajos repetidos, como la construcción de un proyecto de software o trabajos ejecutados por cron.
RunCodeRun
Mencionado en la otra pregunta vinculada, solo admite proyectos Ruby y actualmente está en beta privada. Sin embargo, si su proyecto está en Ruby, podría valer la pena vigilar RunCodeRun.
Matriz de características de CI
Hay muchos sistemas de integración continua disponibles. Esta página es un intento de mantener una comparación imparcial de la mayor cantidad posible de ellos.