Attributs de ressources pris en charge par AWS SAM - AWS Serverless Application Model

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Attributs de ressources pris en charge par AWS SAM

Les attributs de ressources sont des attributs auxquels vous pouvez ajouter AWS SAM AWS CloudFormation des ressources pour contrôler des comportements et des relations supplémentaires. Pour plus d'informations sur les attributs des ressources, consultez Référence d'attribut de ressource dans le Guide de l'utilisateur AWS CloudFormation .

AWS SAM prennent en charge un sous-ensemble d'attributs de ressources définis par AWS CloudFormation. Parmi les attributs de ressources pris en charge, certains sont copiés uniquement dans la AWS CloudFormation ressource générée de base de la AWS SAM ressource correspondante, tandis que d'autres sont copiés dans toutes les AWS CloudFormation ressources générées à partir de la AWS SAM ressource correspondante. Pour plus d'informations sur AWS CloudFormation les ressources générées à partir AWS SAM des ressources correspondantes, consultezAWS CloudFormation Ressources générées pour AWS SAM.

Le tableau suivant récapitule la prise en charge des attributs de ressources par AWS SAM, sous réserve de ce qui est Exceptions indiqué ci-dessous.

Attributs de ressource Ressource(s) Destination générée(s)

DependsOn

Métadonnées 1, 2

Ressource AWS CloudFormation générée par la base uniquement. Pour plus d'informations sur le mappage entre les AWS SAM ressources et les AWS CloudFormation ressources de base, consultezScénarios AWS CloudFormation de ressources générés.

Condition

DeletionPolicy

UpdateReplacePolicy

Toutes les AWS CloudFormation ressources générées à partir de la AWS SAM ressource correspondante. Pour plus d'informations sur les scénarios relatifs AWS CloudFormation aux ressources générées, consultezScénarios AWS CloudFormation de ressources générés.

Remarques :

  1. Pour plus d'informations sur l'utilisation de l'attribut de ressource Metadata avec le type de ressource AWS::Serverless::Function, consultez Création de fonctions Lambda avec des environnements d'exécution personnalisés dans AWS SAM.

  2. Pour plus d'informations sur l'utilisation de l'attribut de ressource Metadata avec le type de ressource AWS::Serverless::LayerVersion, consultez Création de couches Lambda dans AWS SAM.

Exceptions

Il existe un certain nombre d'exceptions aux règles d'attribut de ressource décrites précédemment :

  • CarAWS::Lambda::LayerVersion, le champ personnalisé AWS SAM-only RetentionPolicy définit DeletionPolicy les AWS CloudFormation ressources générées. La priorité est plus élevée que pour DeletionPolicy. Si aucun n'est défini, DeletionPolicy est alors défini par défaut sur Retain.

  • Pour AWS::Lambda::Version, si DeletionPolicy n'est pas spécifié, la valeur par défaut est Retain.

  • Dans le cas où une fonction sans serveur DeploymentPreferences est spécifiée, les attributs de ressources ne sont pas copiés dans les AWS CloudFormation ressources générées suivantes :

    • AWS::CodeDeploy::Application

    • AWS::CodeDeploy::DeploymentGroup

    • Le AWS::IAM::Role nommé CodeDeployServiceRole, qui est créé pour ce scénario

  • Si votre AWS SAM modèle contient plusieurs fonctions dont les sources d'événements d'API sont créées implicitement, les fonctions partageront la AWS::ApiGateway::RestApi ressource générée. Dans ce scénario, si les fonctions ont des attributs de ressource différents, pour la AWS::ApiGateway::RestApi ressource générée, AWS SAM copie les attributs de ressource conformément aux listes de priorité suivantes :

    • UpdateReplacePolicy:

      1. Retain

      2. Snapshot

      3. Delete

    • DeletionPolicy:

      1. Retain

      2. Delete