Devops tools

in Informatica

DevOps – Tools

Reading Time: 2 minutes

Nel post precedente è stata fatta un’introduzione di DevOps. In questo post verranno analizzati alcuni dei tool utilizzati per garantire Continuos Integration (CI) e Continuos Delivery (CD).

Per poter agevolare le attività di integrazione in internet sono presenti diverse soluzioni, che spesso hanno funzionalità simili, ma possono comportare differenze sostanziali in termini di costi / licenze. In questo post verranno analizzati :

  • Jenkins
  • Travis CI
  • Bitbucket

Ovviamente, sono solo alcuni dei software che possono essere utilizzati per impostare flussi CI/CD.

Jenkins

Nell’ambito della CI è probabilmente il software più noto. L’inizio dello sviluppo viene datato 2005 ed è scritto in Java. L’utilizzo tramite interfaccia grafica, lo rende adatto per svolgere operazioni di CI, ma anche di CD. Uno dei punti di forza di Jenkins è sicuramente la presenza di numerosi plugin (se ne contano oltre 1000) che consentono l’integrazione con buona parte dei sistemi di versioning e la creazione di pipeline customizzate. Jenkins è distribuito tramite licenza opensource, può essere eseguito in cloud (ma esistono anche immagini docker), e può essere gestito tramite API e/o GUI Web.

Travis

Nell’home page di Travis è riportato: “.Test and deploy with confidence”. La configurazione viene effettuata utilizzato file .yaml, posizionato all’interno della root della directory dei sorgenti. Il flusso è perfettamente integrato con Github, che ne attiva i processi in base ai cambiamenti del codice presente nel repository. Il progetto è open-source ed è gratuito per progetti open-source. Per le versioni enteprise sono previsti costi che variano in base alla tipologia di progetto. Il vantaggio di Travis è quello di essere totalmente indipendente dalla piattaforma.

Bitbucket

E’ un sistema per la gestione del codice sorgente che utilizza Mercurial o Git. E’ dotato di un sistema piuttosto complesso di pipeline che consentono di automatizzare le operazioni di deploy del codice. Una delle caratteristiche di Bitbucket è quella di essere integrato con Jira, un software molto utilizzato nello sviluppo con metodologie AGILE. Inoltre, sono integrate funzionalità di continuos integration facilmente configurabili tramite interfaccia grafica.