Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Tutorial: imposta una regola CloudWatch Events per ricevere notifiche e-mail per le modifiche allo stato della pipeline
Dopo aver configurato una pipeline in AWS CodePipeline, puoi impostare una regola CloudWatch Events per inviare notifiche ogni volta che ci sono modifiche allo stato di esecuzione delle tue pipeline o nelle fasi o nelle azioni nelle tue pipeline. Per ulteriori informazioni sull'utilizzo CloudWatch degli eventi per impostare le notifiche per le modifiche dello stato della pipeline, consulta. Monitoraggio CodePipeline degli eventi
In questo tutorial, puoi impostare una notifica per l'invio di un'e-mail quando lo stato di una pipeline diventa FAILED (NON RIUSCITO). Questo tutorial utilizza un metodo di trasformazione di input durante la creazione della regola CloudWatch Events. Trasforma i dettagli dello schema del messaggio per consegnare il messaggio in testo leggibile.
Nota
Mentre crei le risorse per questo tutorial, come la notifica Amazon SNS e la regola CloudWatch Events, assicurati che le risorse vengano create nella stessa AWS regione della pipeline.
Argomenti
Fase 1: configurare una notifica e-mail utilizzando Amazon SNS
Amazon SNS coordina l'uso degli argomenti per recapitare messaggi agli endpoint o ai clienti abbonati. Usa Amazon SNS per creare un argomento di notifica e poi iscriviti all'argomento utilizzando il tuo indirizzo e-mail. L'argomento Amazon SNS verrà aggiunto come obiettivo alla tua regola CloudWatch Events. Per ulteriori informazioni, consulta la Guida per gli sviluppatori di Amazon Simple Notification Service.
Crea o identifica un argomento in Amazon SNS. CodePipeline utilizzerà CloudWatch Events per inviare notifiche su questo argomento tramite Amazon SNS. Per creare un argomento:
-
Apri la console Amazon SNS all'indirizzo https://console.aws.amazon.com/sns.
-
Scegli Create topic (Crea argomento).
-
Nella finestra di dialogo Create new topic (Crea nuovo argomento) per Topic name (Nome argomento), digitare un nome per l'argomento, ad esempio
PipelineNotificationTopic
. -
Scegli Create topic (Crea argomento).
Per ulteriori informazioni, consulta Create a Topic nella Amazon SNS Developer Guide.
Abbonare uno o più destinatari all'argomento per ricevere notifiche e-mail. Per sottoscrivere un destinatario a un argomento:
-
Nella console Amazon SNS, dall'elenco Argomenti, seleziona la casella di controllo accanto al nuovo argomento. Scegliere Actions, Subscribe to topic (Operazioni, Effettua sottoscrizione all'argomento).
-
Nella finestra di dialogo Create subscription (Crea sottoscrizione), verificare che un ARN sia presente in Topic ARN (ARN dell'argomento).
-
Per Protocollo, scegli E-mail.
-
Per Endpoint (Endpoint), digitare l'indirizzo e-mail completo del destinatario.
-
Scegli Create Subscription (Crea sottoscrizione).
-
Amazon SNS invia un'e-mail di conferma dell'abbonamento al destinatario. Il destinatario deve scegliere il collegamento Confirm subscription (Conferma sottoscrizione) nell'email di conferma per iniziare a ricevere le notifiche. Dopo che il destinatario ha fatto clic sul link, se l'iscrizione è avvenuta correttamente, Amazon SNS visualizza un messaggio di conferma nel browser Web del destinatario.
Per ulteriori informazioni, consulta Abbonarsi a un argomento nella Amazon SNS Developer Guide.
Fase 2: creazione di una regola e aggiunta dell'argomento SNS come destinazione
Crea una regola di notifica CloudWatch degli eventi con CodePipeline come origine dell'evento.
Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/
. -
Nel pannello di navigazione seleziona Events (Eventi).
-
Scegli Crea regola. In Event source (Origine eventi), scegli AWS CodePipeline. Per Event Type (Tipo di evento), scegliere Pipeline Execution State Change (Modifica dello stato di esecuzione della pipeline).
-
Selezionare Specific state(s) (Stati specifici), quindi scegliere
FAILED
. -
Scegliere Edit (Modifica) per aprire l'editor JSON per il riquadro Event Pattern Preview (Anteprima modello di eventi). Aggiungere il parametro
pipeline
con il nome della pipeline come nell'esempio seguente per la pipeline denominata "myPipeline."Puoi copiare il modello di evento qui e incollarlo nella console:
{ "source": [ "aws.codepipeline" ], "detail-type": [ "CodePipeline Pipeline Execution State Change" ], "detail": { "state": [ "FAILED" ], "pipeline": [ "myPipeline" ] } }
-
In Targets (Destinazioni), seleziona Add target (Aggiungi destinazione).
-
Nell'elenco degli obiettivi, selezionare SNS topic (Argomento SNS); Per Topic (Argomento), immettere l'argomento creato.
-
Espandere Configure input (Configura input), quindi selezionare Input Transformer (Trasformatore di input).
-
Nella casella Input Path (Percorso input) digitare le seguenti coppie chiave-valore.
{ "pipeline" : "$.detail.pipeline" }
Nella casella Input Template (Modello di input) digitare quanto segue:
"The Pipeline <pipeline> has failed."
-
Scegli Configura dettagli.
-
Nella pagina Configure rule details (Configura i dettagli della regola), digitare un nome e una descrizione facoltativa. Lasciare la casella Enabled (Abilitato) selezionata per State (Stato).
-
Scegli Crea regola.
-
Conferma che ora CodePipeline sta inviando le notifiche di build. Ad esempio, verificare se le e-mail di notifica di compilazione si trovano nella casella di posta.
-
Per modificare il comportamento di una regola, nella CloudWatch console, scegli la regola, quindi scegli Azioni, Modifica. Modificare la regola, scegliere Configure details (Configura dettagli) e quindi selezionare Update rule (Aggiorna regola).
Per smettere di usare una regola per inviare notifiche di build, nella CloudWatch console, scegli la regola, quindi scegli Azioni, Disabilita.
Per eliminare una regola, nella CloudWatch console, scegli la regola, quindi scegli Azioni, Elimina.
Fase 3: Eliminazione delle risorse
Dopo aver completato questo tutorial, devi eliminare la pipeline e le risorse utilizzate per evitare che ti venga addebitato un costo per l'utilizzo continuo di tali risorse.
Per informazioni su come ripulire la notifica SNS ed eliminare la regola Amazon CloudWatch Events, consulta Clean Up (Unsubscribe from an Amazon SNS Topic) e consulta il riferimento DeleteRule
nell'Amazon Events API Reference CloudWatch .