Atributos de recursos - AWS Serverless Application Model

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Atributos de recursos

Os atributos de recursos são atributos que você pode adicionar recursos AWS SAM e AWS 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 porAWS CloudFormation. Dos atributos de recursos suportados, alguns são copiados somente para o recurso AWS CloudFormation gerado base do recurso AWS SAM correspondente e alguns são copiados para todos os recursos AWS CloudFormation gerados resultantes do recurso correspondente AWS SAM. Para obter mais informações sobre os recursos AWS CloudFormation gerados a partir dos recursos AWS SAM correspondentes, consulte Recursos gerados da AWS CloudFormation.

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

DependsOn

Metadados 1, 2

Somente recurso AWS CloudFormation gerado por base. Para obter informações sobre o mapeamento entre recursos AWS SAM e recursos AWS CloudFormation básicos, consulte Cenários AWS CloudFormation de recursos gerados.

Condition

DeletionPolicy

UpdateReplacePolicy

Todos os recursos AWS CloudFormation gerados a partir do recurso AWS SAM correspondente. Para obter informações sobre cenários para recursos AWS CloudFormation gerados, consulte Cenários AWS CloudFormation de recursos gerados.

Observações:

  1. Para obter mais informações sobre como usar o atributo de recurso Metadata com o tipo de recurso AWS::Serverless::Function, consulte Criar tempos de execução personalizados.

  2. Para obter mais informações sobre como usar o atributo de recurso Metadata com o tipo de recurso AWS::Serverless::LayerVersion, consulte Construir camadas.

Exceções

Há várias exceções às regras de atributos de recursos descritas anteriormente:

  • ParaAWS::Lambda::LayerVersion, o campo personalizado AWS SAM-only define RetentionPolicy para DeletionPolicy para os recursos AWS CloudFormation gerados. Isso tem uma precedência maior do que DeletionPolicy ele mesmo. Se nenhum estiver definido, então, por padrão, será DeletionPolicy definido como Retain.

  • Para AWS::Lambda::Version, se DeletionPolicy nã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: AWS CloudFormation

    • AWS::CodeDeploy::Application

    • AWS::CodeDeploy::DeploymentGroup

    • O AWS::IAM::Role chamado CodeDeployServiceRole que é 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::RestApi gerado. Nesse cenário, se as funções tiverem atributos de recursos diferentes, então, para o recurso AWS::ApiGateway::RestApi gerado, AWS SAM copia os atributos do recurso de acordo com as seguintes listas priorizadas:

    • UpdateReplacePolicy:

      1. Retain

      2. Snapshot

      3. Delete

    • DeletionPolicy:

      1. Retain

      2. Delete