Panoramica
Integrazione e deployment continui (CI/CD) è l'insieme dei passaggi che vengono eseguiti per fornire una nuova versione software. Le pipeline CI/CD sono procedure volte a migliorare la distribuzione del software durante l'intero ciclo di vita dello sviluppo tramite l'automazione.
La sua implementazione nelle fasi di sviluppo, test, produzione e monitoraggio consente alle aziende di sviluppare codice di alta qualità in modo più sicuro e più rapido. Il vantaggio principale della pipeline CI/CD sta nell'automazione delle procedure, benché ognuna di esse possa essere eseguita manualmente.
Cos'è una pipeline CI/CD?
Una pipeline CI/CD è un processo che incanala lo sviluppo del software lungo un percorso di creazione, test e deployment del codice. L'automazione di tale processo ha lo scopo di ridurre al minimo l'errore umano e garantire la coerenza del processo di rilascio del software. Le fasi di questa pipeline includono compilazione del codice, unit test, analisi del codice, sicurezza e creazione dei file binari. Per gli ambienti containerizzati questa pipeline include anche l'inserimento del codice in un pacchetto di immagini container per il deployment nel cloud ibrido.
CI/CD è la struttura di base di una metodologia DevOps in cui il deployment del software è incentrato sulla collaborazione fra team di sviluppo e team operativi IT. Poiché le applicazioni personalizzate hanno assunto un ruolo chiave per distinguersi dalla concorrenza, la velocità di rilascio del codice oggi costituisce un fattore di distinzione per le aziende.
Container e pipeline di CI/CD
I sistemi di CI/CD tradizionali sono progettati per pipeline che utilizzano macchine virtuali, ma adottando uno sviluppo di applicazioni cloud native si aggiungono vantaggi alle pipeline CI/CD.
Cosa accade quando una pipeline CI/CD è abbinata ai container?
Utilizzando il progetto Tekton puoi creare pipeline di distribuzione in stile Kubernetes in grado di controllare l'intero ciclo di vita dei microservizi, senza dover fare affidamento su team centrali per la manutenzione e la gestione di server di integrazione continua, plugin e configurazioni.
Che cos'è Red Hat OpenShift Pipelines?
Red Hat® OpenShift® Pipelines è una soluzione Kubernetes native che frutta Tekton per offrire un'esperienza CI/CD grazie all'integrazione completa con gli strumenti per sviluppatori di Red Hat e OpenShift. La soluzione OpenShift Pipelines è progettata per eseguire ogni singola fase della pipeline CI/CD in un container dedicato e per sfruttare la scalabilità necessaria a rispondere alle esigenze della pipeline.
Funzionalità di Red Hat OpenShift Pipelines
Pipeline Kubernetes native
La soluzione utilizza le CRD standard di Tekton per definire pipeline che vengono eseguite come container e garantiscono scalabilità on demand.
Esecuzione serverless
Garantisce il controllo completo delle pipeline di distribuzione del team, dei plugin e del controllo degli accessi senza richiedere la gestione di un server CI/CD centrale.
Esperienza CI/CD integrata
Ottieni un'esperienza utente ottimizzata con le varie funzionalità della console Red Hat OpenShift per sviluppatori: prospettiva, interfacce a riga di comando e ambienti di sviluppo integrati.
Scopri come automatizzare lo sviluppo delle applicazioni con Red Hat OpenShift Pipelines.
Che cos'è Tekton?
Tekton offre un framework open source per la creazione rapida di pipeline CI/CD cloud native. Essendo un framework Kubernetes native, Tekton semplifica il deployment fra diversi provider di servizi cloud o ambienti ibridi e utilizza il piano di controllo di Kubernetes per eseguire le attività della pipeline sfruttando le CRD (Custom Resource Definition). Tekton utilizza le specifiche standard del settore per garantire un funzionamento ottimale con gli strumenti di CI/CD esistenti tra cui Jenkins, Jenkins X, Skaffold, Knative e OpenShift.