Esiste una build farm per il controllo di app open source rispetto a diversi sistemi operativi?

StackOverflow https://stackoverflow.com/questions/160793

  •  03-07-2019
  •  | 
  •  

Domanda

Ho un'app Open Source e la faccio funzionare su Windows, Linux e Macintosh (è in C ++ e costruita con gcc). L'ho testato solo su alcune diverse versioni di Linux, quindi non so se si compila e funziona su tutte le diverse versioni di Linux. Esiste un luogo in cui posso caricare il mio codice e farlo testare su diversi sistemi come altre versioni di Linux e cose come Solaris, FreeBSD e altri sistemi operativi?

Sarebbe fantastico se potessi collegarlo direttamente al mio repository svn e prendere il codice più recente e poi inviarmi via e-mail eventuali errori di compilazione generati e con quale sistema operativo si fosse verificato un problema.

Sarei felice di sapere che si compila in quanto si tratta di un'app basata sulla GUI, quindi non mi aspetto che venga effettivamente eseguita e testata.

È stato utile?

Soluzione

Ci sono alcune opzioni ma non sembrano esserci molti servizi gratuiti come questo, il che non sorprende se si considera lo sforzo e le risorse necessarie. Sourceforge gestiva una farm di compilazione come quella che descrivi ma si è chiusa circa un anno fa. Potresti esaminare alcuni dei seguenti. Se sei propenso a pagare per un servizio o creare il tuo, alcuni di questi link potrebbero essere utili. Se stai solo cercando una farm di compilazione / compilazione open source gratuita che copra più piattaforme sembra che tu sia quasi sfortunato.

OpenSuse Build Service

Menzionato prima da Ted , vale la pena ripeterlo - solo per Linux al momento ma supporta numerose distro.

GCC Compile Farm

Principalmente focalizzato sul testing di build per GCC, ma ospita anche alcuni altri progetti come coLinux, client BTG BitTorrent, ClamAV e altri. Può essere qualcosa di cui puoi trarre vantaggio, anche se non vedo quali SO siano nella farm di compilazione (contiene almeno Linux e Solaris in base alle note della pagina).

BuildLocker

BuildLocker è una soluzione di integrazione continua basata su Web per progetti Java e .NET. BuildLocker è una macchina virtuale dedicata che aiuta i team a trovare i bug all'inizio del ciclo di sviluppo, risparmiando tempo e denaro. BuildLocker gestisce build automatizzate pianificate di codice sorgente nel repository di controllo del codice di ProjectLocker. Basta controllare il codice sorgente e le build pianificate convalidano l'integrità del codice. BuildLocker può anche eseguire test automatici e avvisarti ogni volta che un test fallisce.

CruiseControl

CruiseControl è un framework per un processo di build continuo. Include, a titolo esemplificativo, plugin per la notifica e-mail, Ant e vari strumenti di controllo del codice sorgente. Viene fornita un'interfaccia Web per visualizzare i dettagli delle build attuali e precedenti.

Nota a margine interessante, CruiseControl è attualmente utilizzato dal team di sviluppo di StackOverflow anche per i test di build automatizzati, secondo il podcast.

Hudson

Hudson monitora le esecuzioni di lavori ripetuti, come la creazione di un progetto software o lavori eseguiti da cron.

RunCodeRun

Menzionato nell'altra domanda collegata, supporta solo progetti Ruby ed è attualmente in beta privata. Tuttavia, se il tuo progetto è in Ruby, potrebbe valere la pena tenere d'occhio RunCodeRun.

Matrix Feature CI

Sono disponibili molti sistemi di integrazione continua. Questa pagina è un tentativo di mantenere un confronto imparziale tra il maggior numero possibile di essi.

Altri suggerimenti

Dai un'occhiata al servizio di build OpenSuSE , include una varietà abbastanza ampia di distro Linux ( non solo SuSE / OpenSuSE).

Dal punto di vista del software, esiste anche buildbot ( sito del progetto sourceforge ), che può essere utilizzato per configurare il proprio server di integrazione build / continuo. Questo è stato suggerito e considerato come utilizzato per lo sviluppo di gcc (come menzionato nella pagina wiki della fattoria di compilazione gcc pubblicata sopra).

Se stai pianificando di commercializzare il tuo prodotto open source, potresti prendere in considerazione il nostro Parabuild. Ti consente di eseguire una serie di build su più piattaforme e macchine in parallelamente . La build avrà successo solo se tutte le build specifiche della piattaforma avranno successo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top