DeploymentPreference - AWS Serverless Application Model

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

DeploymentPreference

Gibt die Konfigurationen an, um schrittweise Lambda-Bereitstellungen zu ermöglichen. Weitere Informationen zur Konfiguration schrittweiser Lambda-Bereitstellungen finden Sie unter. Schrittweise Bereitstellung serverloser Anwendungen mit AWS SAM

Anmerkung

Sie müssen ein AutoPublishAlias in Ihrem angebenAWS::Serverless::Function, um ein DeploymentPreference Objekt verwenden zu können, andernfalls tritt ein Fehler auf.

Syntax

Verwenden Sie die folgende Syntax, um diese Entität in Ihrer Vorlage AWS Serverless Application Model (AWS SAM) zu deklarieren.

YAML

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

Eigenschaften

Alarms

Eine Liste von CloudWatch Alarmen, die bei Fehlern ausgelöst werden sollen, die durch die Bereitstellung ausgelöst wurden.

Diese Eigenschaft akzeptiert die Fn::If intrinsische Funktion. Im Abschnitt Beispiele am Ende dieses Themas finden Sie eine Beispielvorlage, die verwendet. Fn::If

Typ: Liste

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig AWS SAM und hat kein AWS CloudFormation Äquivalent.

Enabled

Ob diese Bereitstellungspräferenz aktiviert ist.

Typ: Boolesch

Required: No

Standard: Wahr

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Hooks

Validierung Lambda-Funktionen, die vor und nach der Verkehrsverlagerung ausgeführt werden.

Typ: Hooks

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig AWS SAM und hat kein AWS CloudFormation Äquivalent.

PassthroughCondition

Bei True und wenn diese Bereitstellungseinstellung aktiviert ist, wird die Bedingung der Funktion an die generierte CodeDeploy Ressource weitergegeben. Im Allgemeinen sollten Sie dies auf True setzen. Andernfalls würde die CodeDeploy Ressource auch dann erstellt, wenn die Bedingung der Funktion auf False aufgelöst wird.

Typ: Boolesch

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Role

Ein ARN mit einer IAM-Rolle, der für die Verkehrsverlagerung verwendet CodeDeploy wird. Eine IAM-Rolle wird nicht erstellt, wenn diese bereitgestellt wird.

Typ: Zeichenfolge

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

TriggerConfigurations

Eine Liste der Triggerkonfigurationen, die Sie der Bereitstellungsgruppe zuordnen möchten. Wird verwendet, um ein SNS-Thema über Lebenszyklusereignisse zu informieren.

Typ: Liste

Required: No

AWS CloudFormation Kompatibilität: Diese Eigenschaft wird direkt an die TriggerConfigurations Eigenschaft einer AWS::CodeDeploy::DeploymentGroup Ressource übergeben.

Type

Derzeit gibt es zwei Kategorien von Bereitstellungstypen: Linear und Canary. Weitere Informationen zu den verfügbaren Bereitstellungstypen finden Sie unterSchrittweise Bereitstellung serverloser Anwendungen mit AWS SAM.

Typ: Zeichenfolge

Erforderlich: Ja

AWS CloudFormation Kompatibilität: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein AWS CloudFormation Äquivalent.

Beispiele

DeploymentPreference mit Haken vor und nach dem Verkehr.

Beispiel für eine Bereitstellungspräferenz, die Hooks vor und nach dem Traffic enthält.

YAML

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

DeploymentPreference mit der intrinsischen Funktion Fn: :If

Beispiel für eine Bereitstellungspräferenz, die Fn::If für die Konfiguration von Alarmen verwendet wird. In diesem Beispiel Alarm1 wird konfiguriert, ob dies der Fall MyCondition isttrue, Alarm2 und Alarm5 wird konfiguriert, wenn dies der Fall MyCondition istfalse.

YAML

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