Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
DeploymentPreference
Especifica las configuraciones para permitir las implementaciones graduales de Lambda. Para obtener más información acerca de la configuración de implementaciones graduales de Lambda, consulta Implementar aplicaciones sin servidor de forma gradual AWS SAM.
nota
Debe especificar un AutoPublishAlias
en su objeto AWS::Serverless::Function para utilizar un objeto DeploymentPreference
; de lo contrario, se producirá un error.
Sintaxis
Para declarar esta entidad en tu plantilla de AWS Serverless Application Model (AWS SAM), usa la siguiente sintaxis:
YAML
Alarms:
List
Enabled:Boolean
Hooks:Hooks
PassthroughCondition:Boolean
Role:String
TriggerConfigurations:List
Type:String
Propiedades
-
Alarms
-
Una lista de las alarmas de CloudWatch que desea que se activen por cualquier error provocado por la implementación.
Esta propiedad acepta la función intrínseca
Fn::If
. Consulte la sección de ejemplos al final de este tema para ver una plantilla de ejemplo que utilizaFn::If
.Tipo: lista
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
Enabled
-
Si esta preferencia de implementación está habilitada.
Tipo: Booleano
Obligatorio: no
Valor predeterminado: True
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
Hooks
-
Funciones de Lambda de validación que se ejecutan antes y después del desvío del tráfico.
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
PassthroughCondition
-
Si es True y esta preferencia de implementación está habilitada, la condición de la función se transferirá al recurso CodeDeploy generado. Por lo general, debe establecerlo en True. De lo contrario, el recurso CodeDeploy se crearía incluso si la condición de la función se resolviera como False.
Tipo: Booleano
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
Role
-
Un ARN de rol de IAM que CodeDeploy utilizará para el cambio de tráfico. No se creará una función de rol de IAM si se proporciona.
Tipo: cadena
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
-
TriggerConfigurations
-
Una lista de las configuraciones de activación que desea asociar al grupo de implementación. Se usa para notificar a un tema de SNS sobre eventos del ciclo de vida.
Tipo: lista
Obligatorio: no
Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad
TriggerConfigurations
de un recursoAWS::CodeDeploy::DeploymentGroup
. -
Type
-
Actualmente, hay dos categorías de tipos de implementación: Linear (lineal) y Canary (valor controlado). Para obtener más información acerca de los tipos de implementaciones disponibles, consulta Implementar aplicaciones sin servidor de forma gradual AWS SAM.
Tipo: cadena
Obligatorio: sí
Compatibilidad con AWS CloudFormation: esta propiedad es exclusiva de AWS SAM y no tiene un equivalente AWS CloudFormation.
Ejemplos
DeploymentPreference con enlaces previos y posteriores al tráfico.
Ejemplo de preferencia de implementación que contiene enlaces previos y posteriores al tráfico.
YAML
DeploymentPreference: Enabled: true Type: Canary10Percent10Minutes Alarms: - !Ref: AliasErrorMetricGreaterThanZeroAlarm - !Ref: LatestVersionErrorMetricGreaterThanZeroAlarm Hooks: PreTraffic: !Ref: PreTrafficLambdaFunction PostTraffic: !Ref: PostTrafficLambdaFunction
DeploymentPreference con la función intrínseca Fn: :If
Ejemplo de preferencia de implementación que se utiliza para configurar las alarmas Fn::If
. En este ejemplo, Alarm1
se configurará si MyCondition
es true
y Alarm2
y Alarm5
configurarán si MyCondition
es false
.
YAML
DeploymentPreference: Enabled: true Type: Canary10Percent10Minutes Alarms: Fn::If: - MyCondition - - Alarm1 - - Alarm2 - Alarm5