

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
<a name="sam-property-function-deploymentpreference"></a>

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](automating-updates-to-serverless-apps.md)

**Anmerkung**  
Sie müssen ein `AutoPublishAlias` in Ihrem angeben[AWS::Serverless::Function](sam-resource-function.md), um ein `DeploymentPreference` Objekt verwenden zu können, andernfalls tritt ein Fehler auf.

## Syntax
<a name="sam-property-function-deploymentpreference-syntax"></a>

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

### YAML
<a name="sam-property-function-deploymentpreference-syntax.yaml"></a>

```
  [Alarms](#sam-function-deploymentpreference-alarms): List
  [Enabled](#sam-function-deploymentpreference-enabled): Boolean
  [Hooks](#sam-function-deploymentpreference-hooks): Hooks
  [PassthroughCondition](#sam-function-deploymentpreference-passthroughcondition): Boolean
  [Role](#sam-function-deploymentpreference-role): String
  [TriggerConfigurations](#sam-function-deploymentpreference-triggerconfigurations): List
  [Type](#sam-function-deploymentpreference-type): String
```

## Eigenschaften
<a name="sam-property-function-deploymentpreference-properties"></a>

 `Alarms`   <a name="sam-function-deploymentpreference-alarms"></a>
Eine Liste von CloudWatch Alarmen, die durch alle durch die Bereitstellung ausgelösten Fehler ausgelöst werden sollen.  
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  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `Enabled`   <a name="sam-function-deploymentpreference-enabled"></a>
Ob diese Bereitstellungspräferenz aktiviert ist.  
*Typ*: Boolesch  
*Required*: No  
*Standard*: Wahr  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `Hooks`   <a name="sam-function-deploymentpreference-hooks"></a>
Validierung Lambda-Funktionen, die vor und nach der Verkehrsverlagerung ausgeführt werden.  
*[Typ: Hooks](sam-property-function-hooks.md)*  
*Required*: No  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig AWS SAM und hat kein CloudFormation Äquivalent.

 `PassthroughCondition`   <a name="sam-function-deploymentpreference-passthroughcondition"></a>
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  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `Role`   <a name="sam-function-deploymentpreference-role"></a>
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  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

 `TriggerConfigurations`   <a name="sam-function-deploymentpreference-triggerconfigurations"></a>
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  
*CloudFormation Kompatibilität*: Diese Eigenschaft wird direkt an die `[TriggerConfigurations](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations)` Eigenschaft einer `AWS::CodeDeploy::DeploymentGroup` Ressource übergeben.

 `Type`   <a name="sam-function-deploymentpreference-type"></a>
Derzeit gibt es zwei Kategorien von Bereitstellungstypen: Linear und Canary. Weitere Informationen zu den verfügbaren Bereitstellungstypen finden Sie unter[Schrittweise Bereitstellung serverloser Anwendungen mit AWS SAM](automating-updates-to-serverless-apps.md).  
*Typ:* Zeichenfolge  
*Erforderlich*: Ja  
*CloudFormation Kompatibilität*: Diese Eigenschaft ist einzigartig für AWS SAM und hat kein CloudFormation Äquivalent.

## Beispiele
<a name="sam-property-function-deploymentpreference--examples"></a>

### DeploymentPreference mit Haken vor und nach dem Verkehr.
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-pre--and-post-traffic-hooks."></a>

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

#### YAML
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-pre--and-post-traffic-hooks.--yaml"></a>

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

### DeploymentPreference mit der intrinsischen Funktion Fn: :If
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-fn::if-intrinsic-function"></a>

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` ist`true`, `Alarm2` und `Alarm5` wird konfiguriert, wenn dies der Fall `MyCondition` ist`false`.

#### YAML
<a name="sam-property-function-deploymentpreference--examples--deploymentpreference-with-fn::if-intrinsic-function--yaml"></a>

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