DeploymentPreference - AWS Serverless Application Model

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

DeploymentPreference

Specifica le configurazioni per abilitare le distribuzioni Lambda graduali. Per ulteriori informazioni sulla configurazione di distribuzioni Lambda graduali, consulta. Implementazione graduale di applicazioni serverless con AWS SAM

Nota

È necessario specificare un AutoPublishAlias nel proprio AWS::Serverless::Function per utilizzare un DeploymentPreference oggetto, altrimenti si verificherà un errore.

Sintassi

Per dichiarare questa entità nel tuo modello AWS Serverless Application Model (AWS SAM), usa la seguente sintassi.

YAML

Alarms: List Enabled: Boolean Hooks: Hooks PassthroughCondition: Boolean Role: String TriggerConfigurations: List Type: String

Proprietà

Alarms

Un elenco di CloudWatch allarmi che si desidera vengano attivati da eventuali errori generati dalla distribuzione.

Questa proprietà accetta la funzione Fn::If intrinseca. Vedi la sezione Esempi alla fine di questo argomento per un modello di esempio che utilizza. Fn::If

Tipo: Elenco

Required: No

AWS CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un AWS CloudFormation equivalente.

Enabled

Se questa preferenza di distribuzione è abilitata.

Tipo: Booleano

Required: No

Impostazione predefinita: True

AWS CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un AWS CloudFormation equivalente.

Hooks

Funzioni Lambda di convalida eseguite prima e dopo lo spostamento del traffico.

Tipo: ganci

Required: No

AWS CloudFormation compatibilità: Questa proprietà è unica AWS SAM e non ha un AWS CloudFormation equivalente.

PassthroughCondition

Se True e se questa preferenza di distribuzione è abilitata, la Condition della funzione verrà trasmessa alla CodeDeploy risorsa generata. In genere, è necessario impostarlo su True. Altrimenti, la CodeDeploy risorsa verrebbe creata anche se la condizione della funzione viene risolta su False.

Tipo: Booleano

Required: No

AWS CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un AWS CloudFormation equivalente.

Role

Un ARN di ruolo IAM che CodeDeploy verrà utilizzato per lo spostamento del traffico. Se viene fornito, non verrà creato un ruolo IAM.

Tipo: stringa

Required: No

AWS CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un AWS CloudFormation equivalente.

TriggerConfigurations

Un elenco di configurazioni di trigger che si desidera associare al gruppo di distribuzione. Utilizzato per notificare un argomento SNS sugli eventi del ciclo di vita.

Tipo: Elenco

Required: No

AWS CloudFormation compatibilità: questa proprietà viene passata direttamente alla TriggerConfigurations proprietà di una AWS::CodeDeploy::DeploymentGroup risorsa.

Type

Al momento esistono due categorie di tipi di distribuzione: Linear e Canary. Per ulteriori informazioni sui tipi di distribuzione disponibili, vedereImplementazione graduale di applicazioni serverless con AWS SAM.

Tipo: stringa

Campo obbligatorio: sì

AWS CloudFormation compatibilità: questa proprietà è unica AWS SAM e non ha un AWS CloudFormation equivalente.

Esempi

DeploymentPreference con ganci pre e post-traffico.

Esempio di preferenza di implementazione che contiene gli hook precedenti e successivi al traffico.

YAML

DeploymentPreference: Enabled: true Type: Canary10Percent10Minutes Alarms: - Ref: AliasErrorMetricGreaterThanZeroAlarm - Ref: LatestVersionErrorMetricGreaterThanZeroAlarm Hooks: PreTraffic: Ref: PreTrafficLambdaFunction PostTraffic: Ref: PostTrafficLambdaFunction

DeploymentPreference con funzione intrinseca Fn: :If

Esempio di preferenza di distribuzione utilizzata Fn::If per la configurazione degli allarmi. In questo esempio, Alarm1 verrà configurato se lo MyCondition è true Alarm2 e Alarm5 verrà configurato se MyCondition lo è. false

YAML

DeploymentPreference: Enabled: true Type: Canary10Percent10Minutes Alarms: Fn::If: - MyCondition - - Alarm1 - - Alarm2 - Alarm5