Capitolo 5. Come impostare l'integrazione continuae la consegna continua
Questo lavoro è stato tradotto utilizzando l'AI. Siamo lieti di ricevere il tuo feedback e i tuoi commenti: translation-feedback@oreilly.com
Nel Capitolo 4 hai appreso diversi strumenti che aiutano gli sviluppatori a lavorare insieme, tra cui il controllo di versione, i sistemi di compilazione e i test automatizzati. Ma avere solo una serie di strumenti non è sufficiente. Devi anche sapere come metterli insieme in un efficace ciclo di vita del software (SDLC). Ogni azienda ha un proprio SDLC, alcuni dei quali funzionano meglio di altri.
Ad esempio, in LinkedIn, prima del Project Inversion (di cui hai letto nella Prefazione), il nostro SDLC si basava su unmodello di treno di rilascio: ogni due settimane, un "treno" lasciava la stazione con nuovo codice destinato alla produzione. All'epoca, i team lavoravano in rami di funzionalità isolati, e per salire sul treno dovevi inserire il tuo codice in un ramo di rilascio. Diverse settimane prima di un rilascio programmato, ci occupavamo dell'integrazione, unendo i rami di funzionalità in un ramo di rilascio, e poi del deploy, facendo uscire il ramo di rilascio in produzione.
Il processo di integrazione incontrava spesso dei problemi. Mentre decine di rami di funzionalità si scontravano tra loro, gli sviluppatori scoprivano di aver codificato per mesi sulla base di ipotesi errate. L'API che stavi usando in una dozzina di punti era stata rimossa; il modulo che avevi ...