Strumenti DevOps

Completato

Cos'è Azure DevOps?

Azure DevOps è una piattaforma creata da Microsoft, che include diversi servizi che consentono di svolgere molte attività di DevOps.

Alcuni strumenti offerti da Azure DevOps ospitato dal cloud includono:

  • Azure Boards: organizza la pianificazione Agile in base al rilevamento, alla visualizzazione e alla creazione di report per gli elementi di lavoro.
  • Azure Repos: archivia il codice in repository pubblici e privati.
  • Azure Pipelines: combina integrazione continua (CI) e recapito continuo (CD) creando e testando automaticamente i progetti di codice.

Oltre a questi tre, Azure DevOps offre altri strumenti che agevolano il passaggio delle organizzazioni a DevOps. Dal momento che Azure DevOps è progettato come piattaforma, l'utente sceglie quali strumenti usare. Non è obbligatorio usare tutti gli strumenti offerti da Azure DevOps.

Molti degli strumenti di Azure DevOps funzionano con una vasta gamma di linguaggi e sono multipiattaforma. Poiché si sta esplorando la pertinenza dei principi e degli strumenti di DevOps per i progetti di Machine Learning, ci si concentrerà sul lavoro con Python e Linux, che sono quelli usati più comunemente.

Che cos'è GitHub?

GitHub è una piattaforma di sviluppo open source di proprietà di Microsoft, che include diversi strumenti di DevOps, tra cui:

  • Issues (Problemi): tiene traccia di elementi di lavoro, feedback e bug.
  • Repos (Repository): archivia i repository di codice pubblici e privati.
  • Actions: (Azioni) consente la creazione di flussi di lavoro di automazione.

GitHub e Git vengono spesso usati insieme, ma non sono la stessa cosa. Git è dedicato al controllo del codice sorgente ed è accessibile da diversi strumenti. GitHub è un provider di hosting di codice specifico che offre il sistema Git tramite un'interfaccia grafica basata sul Web e combina i repository Git con altri strumenti di DevOps.

Che cos'è Git?

Git è un sistema di controllo del codice sorgente distribuito. Anche se esistono altri sistemi di controllo del codice sorgente, Git è il sistema più popolare disponibile oggi ed è ampiamente usato sia per i framework open source che per i progetti di Machine Learning.

L'idea fondamentale di Git è la distribuzione del controllo del codice sorgente, il che significa che ogni membro del team lavora sulla propria copia del repository completo.

Per lavorare su un progetto simultaneamente, Git offre lo sviluppo basato su trunk con funzionalità di creazione di rami. Creando rami per il progetto di codice, è possibile modificare il codice senza intervenire sulla copia principale del progetto. Una volta completate le modifiche al codice, è possibile unirlo alla copia principale, ad esempio tramite una richiesta pull.