Per creare una pipeline di integrazione e consegna continue (CICD) in vRealize Automation Code Stream, è possibile aggiungere manualmente fasi e attività. Per pianificare la creazione nativa di CICD, raccogliere le informazioni necessarie, quindi creare una pipeline e aggiungere manualmente fasi e attività.

Sarà necessario pianificare sia le fasi di integrazione continua (CI) che quelle di consegna continua (CD) della pipeline. Dopo aver creato ed eseguito la pipeline, è possibile monitorare le tendenze nelle relative esecuzioni.

Per pianificare le fasi CI e CD della pipeline, è necessario verificare che tutti i requisiti siano soddisfatti prima di creare la pipeline.

Pianificazione dei requisiti esterni e interni

Per creare una pipeline da questo piano di esempio, si utilizza un host Docker, un repository Git, Maven e diversi strumenti di creazione post elaborazione.

Endpoint e repository necessari:

  • Un repository del codice sorgente Git in cui gli sviluppatori archiviano il codice. vRealize Automation Code Stream estrae il codice più recente nella pipeline quando gli sviluppatori confermano le modifiche.
  • Un endpoint Docker per l'host della build Docker che eseguirà i comandi di creazione all'interno di un contenitore.
  • Un endpoint Kubernetes che consente a vRealize Automation Code Stream di distribuire l'immagine in un cluster Kubernetes.
  • Un'immagine del generatore che crea il contenitore su cui vengono eseguiti i test di integrazione continua.
  • Un endpoint del registro immagini dal quale l'host della build Docker può estrarre l'immagine del generatore.

È necessario disporre di accesso a un progetto. Il progetto raggruppa tutto il lavoro, inclusi la pipeline, gli endpoint e i dashboard. Verificare di essere un membro di un progetto in vRealize Automation Code Stream. In caso contrario, chiedere a un amministratore di vRealize Automation Code Stream di essere aggiunti come membri di un progetto. Vedere Come aggiungere un progetto in vRealize Automation Code Stream.

È necessario un webhook Git che consenta a vRealize Automation Code Stream di utilizzare il trigger Git per attivare la pipeline quando gli sviluppatori eseguono il commit delle modifiche al codice. Vedere Come utilizzare il trigger Git in vRealize Automation Code Stream per eseguire una pipeline.

Come creare la pipeline CICD e configurare l'area di lavoro

È necessario creare la pipeline, quindi configurare le aree di lavoro, i parametri di input e le attività della pipeline.

Per creare la pipeline, fare clic su Pipeline > Nuova pipeline > Tela vuota.

Quando si crea una pipeline, è possibile utilizzare la tela vuota.

Nella scheda Area di lavoro, immettere le informazioni di integrazione continua:

  • Includere l'host della build Docker.
  • Immettere l'URL dell'immagine del generatore.
  • Selezionare l'endpoint del registro immagini da cui la pipeline deve estrarre l'immagine. Il contenitore esegue le attività CI e distribuisce l'immagine. Se il registro richiede le credenziali, è innanzitutto necessario creare un endpoint del registro immagini, quindi selezionarlo qui in modo che l'host possa estrarre l'immagine dal registro.
  • Aggiungere gli artefatti che devono essere memorizzati nella cache. Affinché una creazione riesca, gli artefatti come le directory devono essere scaricati come dipendenze. La cache è la posizione in cui si trovano questi artefatti. Ad esempio, gli artefatti dipendenti possono includere la directory .m2 per Maven e la directory node_modules per Node.js. Queste directory vengono memorizzate nella cache nelle esecuzioni della pipeline per risparmiare tempo durante le creazioni.

    Quando si crea manualmente una pipeline, si configura l'area di lavoro per la pipeline nella scheda Area di lavoro.

Nella scheda Input configurare i parametri di input della pipeline.

  • Se la pipeline utilizzerà parametri di input da un evento trigger Git, Gerrit o Docker, selezionare il tipo di trigger per i parametri di inserimento automatico. Gli eventi possono includere Modifica oggetto per Gerrit o Git, o il nome del proprietario dell'evento per Docker. Se la pipeline non utilizzerà alcun parametro di input passato dall'evento, lasciare i parametri di invio automatico impostati su Nessuno.
  • Per applicare un valore e una descrizione a un parametro di input della pipeline, fare clic sui tre punti verticali, quindi su Modifica. Il valore immesso viene utilizzato come input per le attività, le fasi o le notifiche.
  • Per aggiungere un parametro di input della pipeline, fare clic su Aggiungi. Ad esempio, è possibile aggiungere approvers per visualizzare un valore predefinito per ogni esecuzione, ma che può essere sovrascritto con un approvatore diverso in fase di runtime.
  • Per aggiungere o rimuovere un parametro immesso, fare clic su Aggiungi/Rimuovi parametro immesso. Ad esempio, rimuovere un parametro inutilizzato per ridurre l'ingombro nella pagina dei risultati e visualizzare solo i parametri di input utilizzati.

    Quando si crea manualmente una pipeline CICD, è necessario configurare i parametri di input nella scheda Input.

Configurare la pipeline per testare il codice:

  • Aggiungere e configurare un'attività CI.
  • Includere i passaggi per eseguire mvn test nel codice.
  • Per identificare eventuali problemi dopo l'esecuzione dell'attività, eseguire gli strumenti di creazione post-elaborazione, ad esempio JUnit e JaCoCo, FindBugs e Checkstyle.

    Per testare il codice, configurare l'attività CI con passaggi e strumenti di creazione post-elaborazione.

Configurare la pipeline per creare il codice:

  • Aggiungere e configurare un'attività CI.
  • Includere i passaggi per l'esecuzione di mvn clean install nel codice.
  • Includere la posizione e il nome del file JAR in modo da preservare l'artefatto.

    Per creare il codice, aggiungere i passaggi nell'attività CI.

Configurare la pipeline per pubblicare l'immagine nell'host Docker:

  • Aggiungere e configurare un'attività CI.
  • Aggiungere i passaggi per il commit, l'esportazione, la creazione e l'inserimento dell'immagine.
  • Aggiungere la chiave di esportazione di IMAGE per l'attività successiva da utilizzare.

    Per pubblicare l'immagine nell'host Docker, aggiungere i passaggi e la chiave di esportazione nell'attività CI.

Dopo aver configurato l'area di lavoro, i parametri di input, le attività di test e le attività di creazione, salvare la pipeline.

Come abilitare ed eseguire la pipeline

Dopo aver configurato la pipeline con fasi e attività, è possibile salvarla e abilitarla.

Quindi, attendere che la pipeline venga eseguita e terminata e verificare che sia stata eseguita correttamente. Se non è riuscita, correggere eventuali errori ed eseguirla di nuovo.

Se la pipeline è stata eseguita correttamente, verificare quanto segue:

  • Esaminare l'esecuzione della pipeline e visualizzare i risultati dei passaggi delle attività.
  • Nell'area di lavoro dell'esecuzione della pipeline, individuare i dettagli relativi al contenitore e al repository Git duplicato.
  • Nell'area di lavoro, esaminare i risultati degli strumenti di post elaborazione e verificare la presenza di errori, code coverage, bug e problemi di stile.
  • Verificare che l'artefatto sia conservato. Verificare inoltre che l'immagine sia stata esportata con il nome e il valore dell'immagine.
  • Passare al repository Docker e verificare che la pipeline abbia pubblicato il contenitore.

Per un esempio dettagliato in cui viene illustrato come vRealize Automation Code Stream integra il codice in modo continuativo, vedere Come integrare il codice in modo continuativo dal repository GitHub o GitLab nella pipeline in vRealize Automation Code Stream.