Uno dei miei ruoli nel mio team è la persona di costruzione . Sono responsabile di mantenere / aggiornare i nostri script di build e di assicurarmi che stiamo costruendo "senza intoppi" sul server di integrazione continua. Di solito questo lavoro non mi dispiace, anche se spesso mi sembra di fare da babysitter costantemente al server CI.
Questo lavoro a volte può essere fastidioso perché se la build si interrompe, devo abbandonare la storia su cui sto lavorando e indagare sul fallimento della build. Gli errori di costruzione si verificano quotidianamente nel nostro team. A volte gli sviluppatori semplicemente non creano localmente prima di eseguire il commit, quindi i test falliscono sul server CI. In questa situazione, mi piace raggiungere rapidamente la persona che ha avuto il "cattivo commit" in modo che la build non rimanga interrotta troppo a lungo. A volte (molto meno frequentemente) esiste una strana condizione sul server CI che deve essere sottoposta a debug.
So che molti team maturi usano l'integrazione continua ma non ci sono molti materiali disponibili sulle buone pratiche.
I miei problemi indicano che la nostra continua integrazione non è molto matura o fa semplicemente parte del lavoro?
Quali sono alcune buone pratiche da seguire? Quali sono le caratteristiche dell'integrazione continua matura ?
Aggiornare
Invece di rispondere ad alcuni commenti, farò invece un aggiornamento. Abbiamo un solo, semplice comando che fa esattamente quello che farà il server di compilazione durante la creazione dell'app. Compilerà, eseguirà tutte le unità / l'integrazione e alcuni rapidi test basati sull'interfaccia utente.
Leggendo le risposte di tutti, sembra che potremmo avere due problemi principali.
- Server CI non si lamenta abbastanza forte quando un build fallisce.
- Gli sviluppatori non hanno la responsabilità di tutti di assicurarsi che il loro impegno sia andato a buon fine.
Ciò che rende le cose più difficili nel mio team è che abbiamo un grande team (10+ sviluppatori) E abbiamo un paio di membri del team offshore che si impegnano quando non siamo nemmeno al lavoro. Poiché la squadra è numerosa e abbiamo stabilito che si preferiscono piccoli e frequenti commit, a volte abbiamo davvero molta attività in un giorno.