Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
DeploymentPreference
Spécifie les configurations permettant d'activer les déploiements Lambda progressifs. Pour plus d'informations sur les configurations de déploiement progressif Lambda, consultez Déploiement progressif d'applications sans serveur avec AWS SAM.
Note
Vous devez spécifier un AutoPublishAlias
dans votre fonction AWS::Serverless::Function pour utiliser un objet DeploymentPreference
. Si vous ne le faites pas, une erreur se produit.
Syntaxe
Pour déclarer cette entité dans votre AWS Serverless Application Model (AWS SAM) modèle, utilisez la syntaxe suivante.
YAML
Alarms:
List
Enabled:Boolean
Hooks:Hooks
PassthroughCondition:Boolean
Role:String
TriggerConfigurations:List
Type:String
Propriétés
-
Alarms
-
Liste des CloudWatch alarmes que vous souhaitez déclencher en cas d'erreur provoquée par le déploiement.
Cette propriété accepte la fonction intrinsèque
Fn::If
. Reportez-vous à la section Exemples au bas de cette rubrique pour obtenir un exemple de modèle qui utiliseFn::If
.Type : liste
Obligatoire : non
AWS CloudFormation compatibilité : cette propriété est propre à AWS SAM et n'a pas de AWS CloudFormation équivalent.
-
Enabled
-
Indique si cette préférence de déploiement est activée.
Type : valeur booléenne
Obligatoire : non
Valeur par défaut : VRAI
AWS CloudFormation compatibilité : cette propriété est propre à AWS SAM et n'a pas de AWS CloudFormation équivalent.
-
Hooks
-
Validation des fonctions Lambda qui sont exécutées avant et après le déplacement du trafic.
Type : crochets
Obligatoire : non
AWS CloudFormation compatibilité : cette propriété est propre à AWS SAM et n'a pas de AWS CloudFormation équivalent.
-
PassthroughCondition
-
Si la valeur est True, et si cette préférence de déploiement est activée, la condition de la fonction sera transmise à la CodeDeploy ressource générée. En règle générale, vous devez définir cette valeur sur True (Vrai). Dans le cas contraire, la CodeDeploy ressource serait créée même si la condition de la fonction prend la valeur False.
Type : valeur booléenne
Obligatoire : non
AWS CloudFormation compatibilité : cette propriété est propre à AWS SAM et n'a pas de AWS CloudFormation équivalent.
-
Role
-
Un IAM rôle ARN qui CodeDeploy sera utilisé pour le transfert de trafic. Aucun IAM rôle ne sera créé s'il est fourni.
Type : chaîne
Obligatoire : non
AWS CloudFormation compatibilité : cette propriété est propre à AWS SAM et n'a pas de AWS CloudFormation équivalent.
-
TriggerConfigurations
-
Une liste des configurations de déclenchement que vous souhaitez associer au groupe de déploiement. Utilisé pour informer un SNS sujet des événements du cycle de vie.
Type: liste
Obligatoire : non
AWS CloudFormation compatibilité : cette propriété est transmise directement à la
TriggerConfigurations
propriété d'uneAWS::CodeDeploy::DeploymentGroup
ressource. -
Type
-
Il existe actuellement deux catégories de types de déploiement : Linéaire et Canary. Pour plus d'informations sur les types de déploiements, consultez Déploiement progressif d'applications sans serveur avec AWS SAM.
Type : chaîne
Obligatoire : oui
AWS CloudFormation compatibilité : cette propriété est propre à AWS SAM et n'a pas de AWS CloudFormation équivalent.
Exemples
DeploymentPreference avec des crochets avant et après le trafic.
Exemple de préférence de déploiement contenant des crochets pré- et post-trafic.
YAML
DeploymentPreference: Enabled: true Type: Canary10Percent10Minutes Alarms: - !Ref: AliasErrorMetricGreaterThanZeroAlarm - !Ref: LatestVersionErrorMetricGreaterThanZeroAlarm Hooks: PreTraffic: !Ref: PreTrafficLambdaFunction PostTraffic: !Ref: PostTrafficLambdaFunction
DeploymentPreference avec fonction intrinsèque Fn : :If
Exemple de préférence de déploiement qui utilise Fn::If
pour configurer les alarmes. Dans cet exemple,Alarm1
sera configuré si MyCondition
est true
, et Alarm2
et Alarm5
seront configurés si MyCondition
est false
.
YAML
DeploymentPreference: Enabled: true Type: Canary10Percent10Minutes Alarms: Fn::If: - MyCondition - - Alarm1 - - Alarm2 - Alarm5