Parte 2: Configurare una catena di strumenti CI
Questa esercitazione spiega come utilizzare il modello di toolchain per l'integrazione continua (CI). Il modello è preconfigurato per la distribuzione continua (CD) con integrazione dell'inventario, gestione delle modifiche con Git Repos and Issue Tracking, raccolta delle prove e distribuzione su IBM Cloud Kubernetes Service.
È possibile personalizzare e gestire a livello centrale le impostazioni IAM per gli account dell'azienda, in modo da soddisfare la conformità e gli standard interni.
Prima di iniziare
- Completate l'esercitazione Impostazione dei prerequisiti.
- Guardate il seguente video:
Avvia l'impostazione della toolchain CI
Il servizio Continuous Delivery fornisce modelli che guidano l'utente attraverso la configurazione della catena di strumenti e creano processi in un ordine logico. Un indicatore di avanzamento mostra i passi per completare la configurazione. Seguire i passaggi per accedere al modello della catena di strumenti CI.
- Nella console IBM Cloud, fare clic sull'icona Menu
> Automazione piattaforma > Toolchains.
- Dalla pagina Catene di strumenti, fare clic su Crea catena di strumenti.
- Fate clic sul riquadro CI - Sviluppare un'applicazione sicura con le pratiche DevSecOps.
Impostare le impostazioni della catena di strumenti CI
La pagina di benvenuto riassume lo scopo della toolchain e rimanda alla documentazione e ai materiali correlati.
-
Fai clic su Start.
-
Immettere un nome unico della catena di strumenti all'interno della catena di strumenti per la stessa regione e gruppo di risorse nel campo IBM Cloud.
-
Seleziona una regione.
-
Seleziona un gruppo di risorse (Resource group).
-
Fai clic su Continue.
È possibile passare al passo successivo solo quando la configurazione per il passo corrente è completa e valida. È sempre possibile fare clic su Indietro per visualizzare i passaggi precedenti del programma di installazione guidata. Il programma di installazione della toolchain conserva tutte le impostazioni di configurazione dai passaggi successivi.
Alcuni passaggi includono un pulsante Passa alla configurazione avanzata. Per impostazione predefinita, questi passaggi presentano la configurazione minima. Tuttavia, gli utenti avanzati che necessitano di un controllo a grana più fine possono fare clic sulla levetta Passa alla configurazione avanzata per visualizzare le opzioni dell'integrazione sottostante.
Configura integrazioni dello strumento IC
Esaminare le impostazioni predefinite e fornire le configurazioni definite dall'utente, ove necessario, per impostare l'integrazione dello strumento CI.
Applicazione
- Selezionare Source Provider come Git Repos and Issue Tracking.
- Il comportamento predefinito della toolchain è Usa l'applicazione di esempio predefinita. La toolchain attualmente supporta il collegamento solo ai repository esistenti Git Repos and Issue Tracking. Se si utilizza il repository del codice sorgente 'applicazione/servizio proprio, fare riferimento a:
- Portare la propria applicazione a DevSecOps.
- Configurare automaticamente le pipeline DevSecOps utilizzando la funzione Inferred DevSecOps Pipeline Configuration.
- Inserite un nome univoco per Nome nuovo repository.
- Fai clic su Continue.
Inventario
Il repository di inventario registra i dettagli delle risorse utente create dalle toolchain CI.
- È possibile accettare la configurazione predefinita fornita nel modello o modificare la configurazione in base alle proprie esigenze.
- Fai clic su Continue.
Problemi
Il repository dei problemi registra i problemi rilevati durante l'esecuzione della pipeline CI.
- È possibile accettare la configurazione predefinita fornita nel modello o modificare la configurazione in base alle proprie esigenze.
- Fai clic su Continue
Segreti
Specificare le integrazioni del caveau segreto da aggiungere alla propria toolchain utilizzando le levette. Per ulteriori informazioni, vedere Gestione di IBM Cloud segreti.
La toolchain CI supporta solo i tipi di segreto Segreti arbitrari e Credenziali IAM.
- Questa esercitazione utilizza IBM Cloud® Secrets Manager come vault per i segreti. I campi Regione, Gruppo di risorse e Nome servizio vengono popolati automaticamente in base alle opzioni disponibili. Selezionare gli indicatori a discesa per visualizzare le altre scelte.
- Inserite il vostro Secrets Manager nome istanza.
- Selezionare il tipo di autorizzazione.
- Fai clic su Continue.
Archiviazione prove
L'archivio delle prove memorizza tutte le prove e gli artefatti generati dalla pipeline DevSecOps CI.
- Attivare il cursore del secchio IBM Cloud Object Storage per memorizzare tutte le prove nel secchio IBM Cloud Object Storage che può essere configurato nella pagina successiva.
- Accettare le impostazioni predefinite.
- Fai clic su Continue.
Bucket Object Storage cloud
È necessario disporre dell 'istanza IBM Cloud® Object Storage e di un bucket Cloud Object Storage che funga da archivio delle prove di conformità.
- I campi Istanza Cloud Object Storage, Nome del bucket e Cloud Object Storage endpoint sono popolati automaticamente.
- Inserite la vostra chiave API ID servizio.
- Preferito: è possibile importare una chiave esistente da un vault dei segreti facendo clic sull'icona della chiave.
- È possibile copiare e incollare una chiave esistente.
- Fai clic su Continue.
Il campo endpoint è facoltativo. Si consiglia di selezionare o fornire l'endpoint durante la configurazione della toolchain o durante l'esecuzione della pipeline.
Distribuisci
Configurare il cluster di destinazione Kubernetes in cui viene distribuita l'applicazione.
-
Utilizzare il nome predefinito della app
hello-compliance-app. -
Digitare la propria IBM Cloud chiave API. La chiave API viene usata per interagire con lo strumento IBM Cloud CLI in diverse attività.
- Preferito: è possibile importare una chiave esistente da un vault dei segreti facendo clic sull'icona della chiave.
- È possibile copiare e incollare una chiave esistente.
- Una nuova chiave può essere creata da qui facendo clic su Nuovo +.
La chiave API appena generata può essere immediatamente salvata in un vault dei segreti.
-
Se la chiave API è valida e ha un accesso sufficiente, il Container Registry, Container Registry namespace, Regione del cluster Dev, Gruppo di risorse, Nome del cluster, Spazio dei nomi del cluster sono popolati automaticamente. È possibile modificare uno qualsiasi di questi campi per adattarlo alla propria configurazione.
-
Fai clic su Continue.
Firma risorsa utente
Gli artefatti costruiti dalla toolchain e registrati nell'inventario devono essere firmati prima di essere distribuiti in produzione.
- Immettere la chiave privata GnuPG. In alternativa, è possibile creare una nuova chiave GPG facendo clic su NEW. Per ulteriori informazioni, vedere Generazione di una chiave GPG.
- Fai clic su Continue.
DevOps Insights
Il IBM Cloud DevOps Insights è incluso nella toolchain. Visualizzare i risultati del test della pipeline per ogni build, da ogni distribuzione e ambiente.
- Accettare la configurazione predefinita.
- Fai clic su Continue.
SonarQube
Configurare SonarQube come strumento di analisi statica del codice per la catena di strumenti. SonarQube fornisce una panoramica dello stato generale e della qualità del codice sorgente ed evidenzia i problemi riscontrati nel nuovo codice. Gli analizzatori statici di codice rilevano bug difficili, come le dereferenze dei null-pointer, gli errori logici e le perdite di risorse per diversi linguaggi di programmazione.
- Accettare la configurazione predefinita.
- Fai clic su Continue.
Strumenti facoltativi
Slack
Configurare Slack per ricevere notifiche sulle richieste di pull o sugli eventi della pipeline CI. È possibile aggiungere lo strumento Slack anche dopo la creazione della catena di strumenti.
- Inserite il vostro webhook Slack. Per ulteriori informazioni, vedere Slack webhook.
- Inserire il proprio canale Slack per inviare il messaggio.
- Inserire il nome della squadra Slack. Ad esempio, se la squadra URL
https://team.slack.com, il nome della squadra èteam. - Scegliete gli eventi per i quali desiderate ricevere le notifiche Notifiche automatiche di Slack.
- Fai clic su Continue.
Crea la toolchain CI
- Nella pagina di riepilogo, fare clic su Crea catena di strumenti.
- Attendere la creazione della catena di strumenti. Questa operazione può richiedere alcuni minuti.
Esplora la toolchain CI
La catena di strumenti CI contiene ci-pr-pipeline (PR) e ci-pipeline (CI). Queste pipeline si attivano quando una nuova richiesta di unione viene inviata o unita a master nel repository dell'applicazione.
Seguire la procedura per accedere alla propria catena di strumenti:
- Nella console IBM Cloud, fare clic sull'icona Menu
> Automazione piattaforma > Toolchains.
- Dalla pagina Catene di strumenti, fare clic su Crea catena di strumenti.
- Fare clic sulla propria catena di strumenti per visualizzare l'output come mostrato nel seguente artefatto.
Eseguire la pipeline ci-pr
Per avviare il ci-pr pipeline, è necessario creare una richiesta di unione nel repository dell'applicazione.
-
Dalla pagina della catena di strumenti CI, fare clic sul riquadro
ci-pr pipeline. Per impostazione predefinita, viene creato con il nomecompliance-app-<timestamp>. -
Creare un ramo dal ramo master.
-
Aggiornare il codice dell'applicazione o aggiungere un file readme e salvare le modifiche.
-
Fare clic su Invia richiesta di unione.
-
Nella pagina della toolchain CI, fai clic sul tile pr - pipeline. Verificare che il
ci-pr pipelinesia attivato dalla creazione della richiesta di unione. -
Attendere il completamento dell'esecuzione di
ci-pr pipeline. La richiesta di unione corrispondente, che si trova nel repository dell'applicazione, è nello statoPendingfinché tutte le fasi della pipeline PR non si concludono con successo. -
Dopo che l'esecuzione della pipeline PR è andata a buon fine, fare clic sulla pipeline per esplorare i numerosi passaggi completati e visualizzare la pagina.
DevSecOps PR Pipeline riuscita -
Accedere a Richiesta di fusione per unire la richiesta in modo che le modifiche vengano copiate nel ramo master del repository dell'applicazione.
Esegui la pipeline CI
Avviare la pipeline CI in uno dei seguenti modi:
- Automaticamente: Dopo una pipeline PR di successo, approvando e unendo la PR al ramo master.
- Manualmente: Per attivare manualmente la pipeline CI, selezionare la scheda Delivery Pipeline, fare clic su Esegui pipeline e selezionare Attivazione manuale.
In questa esercitazione, la pipeline CI è stata attivata dopo l'unione delle modifiche al codice nel ramo master del repository dell'applicazione.
-
Nella pagina CI toolchain, fai clic sul tile ci - pipeline.
-
Fare clic su Esegui contro il nome della pipeline. Osservare l'esecuzione di una pipeline. Attendere il completamento dell'esecuzione della pipeline.
-
Dopo che l'esecuzione della pipeline CI è andata a buon fine, fare clic sulla pipeline per esplorare i passaggi completati e visualizzare la pagina come mostrato nella cattura dello schermo.
Pipeline DevSecOps CI -
Fare clic sul riquadro DevOps Insights per esaminare le evidenze raccolte nella pagina Quality Dashboard, come mostrato nell'immagine.
DevSecOps CI evidenza È inoltre possibile esaminare le prove se durante la configurazione è abilitato il bucket " IBM Cloud Object Storage ". Per valutare se hai degli errori nell'esecuzione della tua pipeline, devi controllare il passo finale della tua pipeline, che ha un programma di valutazione della pipeline.
Visualizzazione dell'applicazione in esecuzione
Dopo una corretta esecuzione della pipeline CI, l'applicazione di esempio viene distribuita nel tuo cluster Kubernetes.
L'applicazione URL si trova alla fine del registro della fase di run stage dell'attività di deploy-dev dell'esecuzione della pipeline CI. Utilizza l' URL a per verificare che l'applicazione sia in esecuzione.
Personalizzazione pipeline
Le varie pipeline fornite nelle toolchain di riferimento per l'integrazione continua e la distribuzione continua si basano sul supporto Continuous Delivery per le pipeline Tekton. Per ulteriori informazioni sulla personalizzazione della pipeline, vedere Come può un utente personalizzare la pipeline?
Passi successivi
È stata creata con successo una catena di strumenti CI DevSecOps, sono stati eseguiti ci-pr pipeline e ci-pipeline per costruire, testare e distribuire le modifiche all'ambiente di sviluppo. Ora siete pronti per esplorare
Impostare una catena di strumenti CD.