

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à.

# Hook del ciclo di vita per le implementazioni di servizi Amazon ECS
<a name="deployment-lifecycle-hooks"></a>

Quando una distribuzione inizia, avanza attraverso le fasi del ciclo di vita. Ogni fase può trovarsi in uno stato come o. `IN_PROGRESS` `SUCCEEDED` È possibile configurare i lifecycle hook in fasi specifiche per eseguire logiche personalizzate o introdurre punti decisionali prima che la distribuzione proceda. Amazon ECS supporta due tipi di ganci per il ciclo di vita:

Ganci Lambda  
Amazon ECS richiama una funzione Lambda in fasi specifiche di una distribuzione. La tua funzione contiene la tua logica personalizzata e deve restituire un oggetto JSON contenente un `hookStatus` di `SUCCEEDED` o indicare `IN_PROGRESS` ad Amazon ECS come procedere. `FAILED` Puoi utilizzare questi hook per eseguire test di convalida, applicare politiche di governance o implementare passaggi di approvazione personalizzati prima che la distribuzione proceda. Per ulteriori informazioni, consulta [Ganci Lambda per le implementazioni di servizi Amazon ECS](lambda-lifecycle-hooks.md).

Metti in pausa gli hook  
Amazon ECS sospende la distribuzione in una fase del ciclo di vita configurata e attende che tu chiami l'`ContinueServiceDeployment`API per continuare o ripristinare. Mentre sei in pausa, puoi eseguire i tuoi flussi di lavoro esternamente, ad esempio approvazioni manuali, test di integrazione con strumenti esistenti, controlli di fattibilità operativa o fasi della pipeline. CI/CD Per ulteriori informazioni, consulta [Metti in pausa gli hook per le distribuzioni dei servizi Amazon ECS](pause-lifecycle-hooks.md).

Puoi configurare sia gli hook Lambda che gli hook di pausa nella stessa fase del ciclo di vita. Entrambi gli hook devono essere completati prima che l'implementazione passi alla fase successiva.

## Dettagli del gancio del ciclo di vita
<a name="lifecycle-hook-details-overview"></a>

Quando gli hook sono attivi durante una distribuzione, puoi visualizzarne lo stato chiamando. `DescribeServiceDeployments` La risposta include un `lifecycleHookDetails` array con i seguenti campi per ogni hook attivo:


| Campo | Description | 
| --- | --- | 
| hookId | L'identificatore univoco per l'esecuzione di questo hook. Usa questo valore quando richiami ContinueServiceDeployment gli hook di pausa. | 
| targetType | Il tipo di gancio: AWS\_LAMBDA o. PAUSE | 
| targetArn | L'ARN del bersaglio del gancio. Per i ganci Lambda, questa è la funzione Lambda ARN. Per gli hook di pausa, questo campo non è impostato. | 
| status | Lo stato attuale dell'hook:AWAITING\_ACTION,,, IN\_PROGRESS SUCCEEDEDFAILED, o. TIMED\_OUT | 
| expiresAt | La data e l'ora di scadenza dell'hook. (Esempio: T12:06:49-07:00 2026-05-06) | 
| timeoutAction | L'azione intrapresa da Amazon ECS allo scadere del timeout: ROLLBACK oCONTINUE. | 

## Categorie della fase del ciclo di vita
<a name="lifecycle-stage-categories"></a>

Le fasi del ciclo di vita rientrano in due categorie:

1. Fasi di **chiamata singole: Amazon ECS richiama queste fasi** solo una volta durante l'implementazione di un servizio:
   + `RECONCILE_SERVICE`
   + `PRE_SCALE_UP`
   + `POST_SCALE_UP`
   + `TEST_TRAFFIC_SHIFT`
   + `POST_TEST_TRAFFIC_SHIFT`
   + `POST_PRODUCTION_TRAFFIC_SHIFT`

1. Fasi **di chiamata ricorrenti: Amazon ECS può richiamare queste fasi** più volte durante l'implementazione di un servizio. Per le implementazioni lineari e canarie, queste fasi vengono richiamate in ogni fase di spostamento del traffico:
   + `PRE_PRODUCTION_TRAFFIC_SHIFT`
   + `PRODUCTION_TRAFFIC_SHIFT`

**Nota**  
Gli hook di pausa non possono essere configurati in `TEST_TRAFFIC_SHIFT` o `PRODUCTION_TRAFFIC_SHIFT` perché queste fasi vengono richiamate anche durante il rollback. La pausa durante un rollback richiederebbe una chiamata aggiuntiva `ContinueServiceDeployment` per completare il rollback.

## Fasi supportate per tipo di hook
<a name="lifecycle-hooks-supported-stages"></a>


| Fase del ciclo di vita | Ganci Lambda | Metti in pausa i ganci | 
| --- | --- | --- | 
| RECONCILE\_SERVICE | Sì  | Sì | 
| PRE\_SCALE\_UP | Sì | Sì | 
| POST\_SCALE\_UP | Sì | Sì | 
| TEST\_TRAFFIC\_SHIFT | Sì | No | 
| POST\_TEST\_TRAFFIC\_SHIFT | Sì | Sì | 
| PRE\_PRODUCTION\_TRAFFIC\_SHIFT | Sì | Sì | 
| PRODUCTION\_TRAFFIC\_SHIFT | Sì | No | 
| POST\_PRODUCTION\_TRAFFIC\_SHIFT | Sì | Sì | 