Atributos de recursos compatíveis com o AWS SAM
Os atributos de recursos são atributos que você pode adicionar recursos AWS SAM e CloudFormation para controlar comportamentos e relacionamentos adicionais. Para obter mais informações sobre atributos de recursos, consulte Referência de atributos de recursos no Guia AWS CloudFormation do usuário.
AWS SAMsuportam um subconjunto de atributos de recursos que são definidos porCloudFormation. Dos atributos de recursos suportados, alguns são copiados somente para o recurso CloudFormation gerado base do recurso AWS SAM correspondente e alguns são copiados para todos os recursos CloudFormation gerados resultantes do recurso correspondente AWS SAM. Para obter mais informações sobre os recursos CloudFormation gerados a partir dos recursos AWS SAM correspondentes, consulte Recursos gerados do CloudFormation para o AWS SAM.
A tabela a seguir resume o suporte a atributos de recursos porAWS SAM, de acordo com a Exceções lista abaixo.
| Atributos de recursos | Recurso(s) gerado(s) pelo destino |
|---|---|
|
Metadados 1, 2 |
Somente recurso CloudFormation gerado por base. Para obter informações sobre o mapeamento entre recursos AWS SAM e recursos CloudFormation básicos, consulte Cenários CloudFormation de recursos gerados. |
|
Todos os recursos CloudFormation gerados a partir do recurso AWS SAM correspondente. Para obter informações sobre cenários para recursos CloudFormation gerados, consulte Cenários CloudFormation de recursos gerados. |
Observações:
-
Para obter mais informações sobre como usar o atributo de recurso
Metadatacom o tipo de recursoAWS::Serverless::Function, consulte Como criar funções do Lambda com runtimes personalizados no AWS SAM. -
Para obter mais informações sobre como usar o atributo de recurso
Metadatacom o tipo de recursoAWS::Serverless::LayerVersion, consulte Como criar camadas do Lambda no AWS SAM.
Exceções
Há várias exceções às regras de atributos de recursos descritas anteriormente:
-
Para
AWS::Lambda::LayerVersion, o campo personalizado AWS SAM-only defineRetentionPolicyparaDeletionPolicypara os recursos CloudFormation gerados. Isso tem uma precedência maior do queDeletionPolicyele mesmo. Se nenhum estiver definido, então, por padrão, seráDeletionPolicydefinido comoRetain. -
Para
AWS::Lambda::Version, seDeletionPolicynão especificado, o padrão seráRetain. -
Para o cenário em que
DeploymentPreferencesé especificado para uma função sem servidor, os atributos do recurso não são copiados para os seguintes recursos gerados: CloudFormation-
AWS::CodeDeploy::Application -
AWS::CodeDeploy::DeploymentGroup -
O
AWS::IAM::RolechamadoCodeDeployServiceRoleque é criado para esse cenário
-
-
Se seu modelo AWS SAM contiver várias funções com fontes de eventos de API criadas implicitamente, as funções compartilharão o recurso
AWS::ApiGateway::RestApigerado. Nesse cenário, se as funções tiverem atributos de recursos diferentes, então, para o recursoAWS::ApiGateway::RestApigerado, AWS SAM copia os atributos do recurso de acordo com as seguintes listas priorizadas:-
UpdateReplacePolicy:-
Retain -
Snapshot -
Delete
-
-
DeletionPolicy:-
Retain -
Delete
-
-