Riferimenti a funzioni intrinseche negli attributi DeletionPolicy e UpdateReplacePolicy - AWS CloudFormation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Riferimenti a funzioni intrinseche negli attributi DeletionPolicy e UpdateReplacePolicy

Quando aggiungi la AWS::LanguageExtensions trasformazione in un AWS CloudFormation modello, puoi utilizzare le funzioni intrinseche per definire gli attributi e le Attributo DeletionPolicy risorse. Attributo UpdateReplacePolicy

Nota

La funzione intrinseca deve restituire un valore Opzioni DeletionPolicy o Opzioni UpdateReplacePolicy valido.

Dichiarazione

JSON

{ "DeletionPolicy": IntrinsicFunction }
{ "UpdateReplacePolicy": IntrinsicFunction }

YAML

DeletionPolicy: IntrinsicFunction
UpdateReplacePolicy: IntrinsicFunction

Parametri

IntrinsicFunction

La funzione intrinseca che restituisce un'opzione Attributo DeletionPolicy o Attributo UpdateReplacePolicy valida.

Esempi

Definisci DeletionPolicy e UpdateReplacePolicy utilizzando la funzione intrinseca Fn:If

Nell'esempio seguente vengono impostati gli attributi Attributo DeletionPolicy e Attributo UpdateReplacePolicy in base alla condizione definita nella funzione intrinseca Fn::If. Se il parametro Stage è Prod, gli attributi DeletionPolicy e UpdateReplacePolicy saranno impostati su Retain.

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::LanguageExtensions", "Parameters": { "Stage": { "Type": "String", "AllowedValues": [ "Prod", "Staging", "Dev" ] } }, "Conditions": { "IsProd": { "Fn::Equals": [ { "Ref": "Stage" }, "Prod" ] } }, "Resources": { "Table": { "Type": "AWS::DynamoDB::Table", "Properties": { "KeySchema": [{ "AttributeName": "primaryKey", "KeyType": "HASH" }], "AttributeDefinitions": [{ "AttributeName": "primaryKey", "AttributeType": "S" }] }, "DeletionPolicy": { "Fn::If": [ "IsProd", "Retain", "Delete" ] }, "UpdateReplacePolicy": { "Fn::If": [ "IsProd", "Retain", "Delete" ] } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Transform: 'AWS::LanguageExtensions' Parameters: Stage: Type: String AllowedValues: - Prod - Staging - Dev Conditions: IsProd: !Equals - !Ref Stage - Prod Resources: Table: Type: 'AWS::DynamoDB::Table' Properties: KeySchema: - AttributeName: primaryKey KeyType: HASH AttributeDefinitions: - AttributeName: primaryKey AttributeType: S DeletionPolicy: !If - IsProd - Retain - Delete UpdateReplacePolicy: !If - IsProd - Retain - Delete

Definisci gli attributi DeletionPolicy e UpdateReplacePolicy utilizzando la funzione intrinseca Ref

Nell'esempio seguente vengono impostati gli attributi Attributo DeletionPolicy e Attributo UpdateReplacePolicy in base al valore restituito dalla funzione intrinseca Ref. Se i parametri DeletionPolicyParam e UpdateReplacePolicyParam sono entrambi impostati su Retain, anche gli attributi DeletionPolicy e UpdateReplacePolicy sono impostati su Retain.

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::LanguageExtensions", "Parameters": { "DeletionPolicyParam": { "Type": "String", "AllowedValues": [ "Delete", "Retain", "Snapshot" ], "Default": "Delete" }, "UpdateReplacePolicyParam": { "Type": "String", "AllowedValues": [ "Delete", "Retain", "Snapshot" ], "Default": "Delete" } }, "Resources": { "Table": { "Type": "AWS::DynamoDB::Table", "Properties": { "KeySchema": [ { "AttributeName": "primaryKey", "KeyType": "HASH" }], "AttributeDefinitions": [{ "AttributeName": "primaryKey", "AttributeType": "S" }] }, "DeletionPolicy": { "Ref": "DeletionPolicyParam" }, "UpdateReplacePolicy": { "Ref": "UpdateReplacePolicyParam" } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Transform: 'AWS::LanguageExtensions' Parameters: DeletionPolicyParam: Type: String AllowedValues: - Delete - Retain - Snapshot Default: Delete UpdateReplacePolicyParam: Type: String AllowedValues: - Delete - Retain - Snapshot Default: Delete Resources: Table: Type: 'AWS::DynamoDB::Table' Properties: KeySchema: - AttributeName: primaryKey KeyType: HASH AttributeDefinitions: - AttributeName: primaryKey AttributeType: S DeletionPolicy: !Ref DeletionPolicyParam UpdateReplacePolicy: !Ref UpdateReplacePolicyParam

Funzioni supportate

All'interno degli attributi DeletionPolicy o UpdateReplacePolicy puoi utilizzare le seguenti funzioni:

Puoi inoltre utilizzare i seguenti pseudo parametri:

  • AWS::AccountId

  • AWS::Partition

  • AWS::Region