Integrazione continua (con progetti iOS e Android) [chiuso]

9

Sto cercando di apportare alcuni cambiamenti positivi nella mia azienda e una delle modifiche è l'implementazione dell'integrazione continua. Facciamo lo sviluppo mobile (iOS / Android), quindi ho bisogno di un elemento di configurazione che supporti entrambi i tipi di progetti. Come puoi dire non so molto su CI ma ho cercato un po 'su Google e penso che Jenkins e Hudson siano i due più popolari.

Ho una domanda in due parti.

  1. Il tuo pensiero su Jenkins?
  2. Esiste un modo per CI di verificare se il progetto si sta compilando con il
    standard di codifica (come l'accoppiamento lento e così via)?
posta paxx 24.03.2012 - 12:51
fonte

3 risposte

9

In primo luogo potresti voler dare un'occhiata a TeamCity come un'altra opzione per il tuo server.

Dal mio punto di vista (anche se ho un po 'meno esperienza con Jenkins che con TeamCity) entrambi sono strumenti eccellenti e molto capaci - sarei felice in un ambiente che usa entrambi.

Ok, per arrivare alla carne del problema, cioè

Is there a way for CI to check if the project is compiling to the coding standards (like loose coupling and so on)?

Al livello più fondamentale tutto ciò che fa un server CI è eseguire uno script e quindi interpretare e presentare i risultati dell'esecuzione di tale script, quindi se è possibile eseguirne uno script, probabilmente il server CI può eseguirlo e se è possibile formattare in modo appropriato, quindi il server CI può probabilmente interpretare e generare report sul risultato.

Ovviamente i principali server di sviluppo sono già in grado di parlare / integrarsi con molti strumenti popolari - quindi la domanda diventa veramente quale strumento stai usando per verificare gli standard di codifica e che integri con la scelta del server CI.

Sì, il server CI offre molto di più in termini di automazione rispetto al semplice utilizzo di uno script, ma alla fine è ciò che fa.

Per essere chiari - so che un server di build fa molto di più che eseguire script, è l'automazione del processo (e in particolare l'integrazione con (D) VCS) che aggiunge valore - ma nel rispondere al "cosa fare" Ho bisogno di un server di build "domanda la risposta è" un server e script "tutto il resto scorre da lì.

    
risposta data 24.03.2012 - 15:22
fonte
5

Seguo la raccomandazione di TeamCity: è un ottimo prodotto. Non posso parlare ad Android perché non ho tempo di sederci laggiù, ma ho ottenuto con successo progetti iOS in esecuzione in CI grazie a due articoli ( 1 2 ).

Le parti più complicate hanno davvero a che fare con il Mac per eseguire la build automatizzata con il portachiavi appropriato e così puoi creare un'app firmata che potresti distribuire su un iDevice piuttosto che su un'opzione solo dell'emulatore.

    
risposta data 24.03.2012 - 18:39
fonte
2

Ho impostato il server di build e gli script della nostra azienda prima di utilizzare Jenkins per sviluppare app iOS. Come molti hanno detto, il server CI è piuttosto semplice e mi piace Jenkins perché è gratuito / open source e ha molti plugin come la pubblicazione di report di copertura o l'integrazione con github.

    
risposta data 24.03.2012 - 18:58
fonte

Leggi altre domande sui tag