Per creare una pipeline di integrazione e consegna continue (CICD) in 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à.
È 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.
Quando una pipeline include un'immagine da Docker Hub, è necessario verificare che l'immagine disponga di cURL o wget incorporato prima di eseguire la pipeline. Quando la pipeline viene eseguita, Code Stream scarica un file binario che utilizza cURL o wget per eseguire i comandi.
L'area di lavoro della pipeline di Code Stream supporta Docker e Kubernetes per le attività di integrazione continua e le attività personalizzate.
Per informazioni sulla configurazione dell'area di lavoro, vedere Configurazione dell'area di lavoro della pipeline.
Pianificazione dei requisiti esterni e interni
Per pianificare le fasi CI e CD della pipeline, è necessario verificare che i seguenti requisiti siano soddisfatti prima di creare la pipeline.
Questo esempio utilizza un'area di lavoro di Docker.
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. 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'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 Code Stream. In caso contrario, chiedere a un amministratore di Code Stream di essere aggiunti come membri di un progetto. Vedere Come aggiungere un progetto in Code Stream.
È necessario un webhook Git che consenta a 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 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
.
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 directorynode_modules
per Node.js. Queste directory vengono memorizzate nella cache nelle esecuzioni della pipeline per risparmiare tempo durante le creazioni.
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.
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.
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.
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.
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 Code Stream integra il codice in modo continuativo, vedere Come integrare il codice in modo continuativo dal repository GitHub o GitLab nella pipeline in Code Stream.