Uno sviluppatore può integrare in modo continuativo il codice da un repository GitHub o un repository GitLab Enterprise. Ogni volta che gli sviluppatori aggiornano il codice e confermano le modifiche nel repository, Automation Pipelines ascolta le modifiche e attiva la pipeline.

Il workflow da un'archiviazione di codice a un'applicazione distribuita in un cluster Kubernetes può utilizzare GitHub, Automation Pipelines, Docker Hub, il trigger per Git e Kubernetes.

Per consentire a Automation Pipelines di attivare la pipeline quando si verificano modifiche al codice, utilizzare il trigger Git. A questo punto, Automation Pipelines attiva la pipeline ogni volta che verranno confermate le modifiche al codice.

L'area di lavoro della pipeline di Automation Pipelines supporta Docker e Kubernetes per le attività di integrazione continua e le attività personalizzate.

Per ulteriori informazioni sulla configurazione dell'area di lavoro, vedere Configurazione dell'area di lavoro della pipeline.

Il seguente diagramma di flusso mostra il workflow che è possibile eseguire se si utilizza un modello di pipeline smart per creare la pipeline o se la pipeline viene creata manualmente.

Figura 1. Workflow che utilizza un modello di pipeline smart o crea una pipeline manualmente
Il workflow consente di decidere il percorso attraverso il processo che integra il codice in modo continuativo utilizzando una pipeline di integrazione continua.

L'esempio seguente utilizza un'area di lavoro di Docker.

Per creare il codice, utilizzare un host Docker. È possibile utilizzare JUnit e JaCoCo come strumenti del framework di test, che eseguono unit test e code coverage, che verranno inclusi nella pipeline.

Quindi, utilizzare il modello di pipeline smart di integrazione continua per creare una pipeline di integrazione continua che crea, verifica e distribuisce il codice al cluster Kubernetes del team di progetto in AWS. Per archiviare gli artefatti di dipendenza del codice per l'attività di integrazione continua, che può consentire di risparmiare tempo nelle creazioni di codice, è possibile utilizzare una cache.

Nell'attività della pipeline che crea e verifica il codice, è possibile includere diversi passaggi di integrazione continua. Tali passaggi possono trovarsi nella stessa directory di lavoro in cui Automation Pipelines clona il codice sorgente quando la pipeline viene attivata.

Per distribuire il codice nel cluster Kubernetes, è possibile utilizzare un'attività Kubernetes nella pipeline. È quindi necessario abilitare ed eseguire la pipeline. Apportare quindi una modifica al codice nel repository e osservare il trigger della pipeline. Per monitorare e creare report sulle tendenze della pipeline dopo l'esecuzione della pipeline, utilizzare i dashboard.

Nell'esempio seguente, per creare una pipeline di integrazione continua che integri in modo continuativo il codice nella pipeline, utilizzare il modello di pipeline smart di integrazione continua. Questo esempio utilizza un'area di lavoro di Docker.

Facoltativamente, è possibile creare manualmente la pipeline e aggiungervi fasi e attività. Per ulteriori informazioni sulla pianificazione di una creazione di integrazione continua e sulla creazione manuale della pipeline, vedere Pianificazione di una creazione nativa di integrazione e consegna continue in Automation Pipelines prima dell'aggiunta manuale di attività.

Prerequisiti

Procedura

  1. Seguire i prerequisiti.
  2. Per creare la pipeline utilizzando il modello di pipeline smart, aprire il modello smart di integrazione continua e compilare il modulo.
    1. Fare clic su Pipeline > Nuova pipeline > Modello smart > Integrazione continua.
    2. Rispondere alle domande nel modello relative al repository del codice sorgente, ai set di strumenti di creazione, allo strumento di pubblicazione e all'area di lavoro dell'immagine della build.
    3. Aggiungere le notifiche Slack o le notifiche E-mail per il team.
    4. Per fare in modo che il modello di pipeline smart crei la pipeline, fare clic su Crea.
    5. Per apportare ulteriori modifiche alla pipeline, fare clic su Modifica, apportare le modifiche e fare clic su Salva.
    6. Abilitare la pipeline ed eseguirla.
  3. Per creare la pipeline manualmente, aggiungere fasi e attività alla tela e includere le informazioni sulla creazione dell'integrazione continua nativa nell'attività di integrazione continua.
    1. Fare clic su Pipeline > Nuova pipeline > Tela vuota.
    2. Fare clic sulla fase, quindi trascinare le varie attività di integrazione continua dal riquadro di navigazione alla fase.
    3. Per configurare l'attività di integrazione continua, fare clic su di essa, quindi sulla scheda Attività.
    4. Aggiungere i passaggi che integrano il codice in modo continuativo.
    5. Includere i percorsi degli artefatti di dipendenza.
    6. Aggiungere la posizione di esportazione.
    7. Aggiungere gli strumenti del framework di test che verranno utilizzati.
    8. Aggiungere l'host Docker e l'immagine della build.
    9. Aggiungere il registro del contenitore, la directory di lavoro e la cache.
    10. Salvare la pipeline, quindi abilitarla.
  4. Apportare una modifica al codice nel repository GitHub o nel repository GitLab.
    Il trigger Git attiva la pipeline, che inizia a essere eseguita.
  5. Per verificare che la modifica del codice abbia attivato la pipeline, fare clic su Trigger > Git > Attività.
  6. Per visualizzare l'esecuzione della pipeline, fare clic su Esecuzioni e verificare che i passaggi abbiano creato ed esportato l'immagine della build.
    L'esecuzione della pipeline mostra il percorso degli artefatti conservati e il valore dell'immagine esportata.
  7. Per monitorare il dashboard della pipeline per tenere traccia degli indicatori KPI e delle tendenze, fare clic su Dashboard > Dashboard della pipeline.

risultati

Congratulazioni! È stata creata una pipeline che integra in modo continuativo il codice da un repository GitHub o un repository GitLab nella propria pipeline e distribuisce l'immagine della build.

Operazioni successive

Per ulteriori informazioni, consultare le risorse aggiuntive in Introduzione a VMware Aria Automation.