DeploymentPreference - AWS Serverless Application Model

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

DeploymentPreference

指定要啟用漸進 Lambda 部署的組態。如需設定漸進 Lambda 部署的詳細資訊,請參閱使用 逐步部署無伺服器應用程式 AWS SAM

注意

您必須AutoPublishAlias在中指定一個AWS::Serverless::Function才能使用DeploymentPreference對象,否則將導致錯誤。

語法

要在您的中聲明此實體 AWS Serverless Application Model (AWS SAM) 範本,請使用下列語法。

YAML

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

屬性

Alarms

您希望由部署引發的任何錯誤觸發的 CloudWatch 警示清單。

此屬性接受Fn::If內在函數。如需使用的範例範本,請參閱本主題底部的「範例」一節Fn::If

類型:列表

必要:否

AWS CloudFormation 兼容性:此屬性是唯一的 AWS SAM 並沒有 AWS CloudFormation 等效。

Enabled

是否已啟用此部署偏好設定。

類型:布林值

必要:否

預設值:真

AWS CloudFormation 兼容性:此屬性是唯一的 AWS SAM 並沒有 AWS CloudFormation 等效。

Hooks

驗證流量轉移之前和之後執行的 Lambda 函數。

類型掛鉤

必要:否

AWS CloudFormation 兼容性:此屬性是唯一的 AWS SAM 並沒有 AWS CloudFormation 等效。

PassthroughCondition

如果為 True,且啟用此部署偏好設定,則函數的「條件」會傳遞至所產生的 CodeDeploy 資源。一般而言,您應該將其設定為 True。否則,即使函數的條件解析為 False,也會建立 CodeDeploy 資源。

類型:布林值

必要:否

AWS CloudFormation 兼容性:此屬性是唯一的 AWS SAM 並沒有 AWS CloudFormation 等效。

Role

CodeDeploy 將用於交通轉移的IAM角ARN色。如果提供此IAM角色,將不會建立角色。

類型:字串

必要:否

AWS CloudFormation 兼容性:此屬性是唯一的 AWS SAM 並沒有 AWS CloudFormation 等效。

TriggerConfigurations

您要與部署群組產生關聯的觸發程式組態清單。用於通知生命週期事件的SNS主題。

類型:列表

必要:否

AWS CloudFormation 兼容性:此屬性直接傳遞給AWS::CodeDeploy::DeploymentGroup資源的TriggerConfigurations屬性。

Type

目前有兩種部署類型:線性和 Canary。如需可用部署類型的詳細資訊,請參閱使用 逐步部署無伺服器應用程式 AWS SAM

類型:字串

必要:是

AWS CloudFormation 兼容性:此屬性是唯一的 AWS SAM 並沒有 AWS CloudFormation 等效。

範例

DeploymentPreference 具有交通前和交通後掛鉤。

包含流量前後掛接的範例部署偏好設定。

YAML

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

DeploymentPreference 與 Fn:: 如果內在函數

Fn::If於設定警示的範例部署偏好設定。在此範例中,Alarm1將會設定如果MyConditiontrueAlarm2且如果MyCondition是,則Alarm5會設定false

YAML

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