GitLab Continuous Integration server

GitLab Continuous Integration

GitLab Continuous Integration è un plugin di GitLab che permette di esternalizzare il processo di test di una applicazione.

Prima di parlare di GitLab Continuous Integration bisogna fare due premesse: cos’è il test driven development e cos’è GitLab.

Il test driven development è una modalità di sviluppo che si basa sulla scrittura di brevi procedure di test per collaudare il codice noti come TTD; lo sviluppo di questi test si esegue in tre fasi successive: Red-Green-Refactor: nella fase Red il programmatore scrive un test automatico che necessariamente fallisce; nella fase Green il programmatore scrive il codice per far passare il test; nella fase di refactor, il programmatore ottimizza il codice, ma ha a disposizione lo strumento per collaudare che le modifiche funzionino.

Il test driven development è sostanzialmente il sistema che ci permette di essere certi della bontà e qualità del codice nel tempo, perchè saremo sempre certi che le modifiche successive non andranno a “rompere” il funzionamento di quanto già scritto.

GitLab è un sistema installabile sui propri server che permette di avere un sistema molto simile a GitHub per ospitare il proprio codice e tenere traccia delle revisioni successive. Come dice il nome, il sistema si basa su Git, il popolare ed avanzato sistema di revisioni. GitLab, come GitHub da cui ha preso spunto, permette ad un team di sviluppatori di procedere in sincronia e riuscire a collaborare efficacemente nello sviluppo senza “scontrarsi”.

GitLab Continuous Integration è il plugin che unisce questi due aspetti descritti in premessa: difatti si tratta di un sistema che consente di far girare le procedure del Test Driven Development in automatico e continuamente sul server, in modo che tutti gli sviluppatori abbiano riscontro immediato della bontà delle modifiche di volta in volta caricate.

La cosa interessante di GitLab Continuous Integration è che nasce scalabile, per cui è possibile avere più server che lavorano in parallelo per collaudare il software molto più velocemente rispetto ad un solo server o rispetto al PC del singolo sviluppatore.

GitLab Continuous Integration, così come GitLab, è scritto in Ruby, ma è compatibile con tutti i linguaggi di programmazione.

Leave a Reply

Your email address will not be published. Required fields are marked *

3 + 10 =