AWS::Serverless::Application - AWS Serverless Application Model

AWS::Serverless::Application

Incorpora um aplicativo com tecnologia sem servidor de AWS Serverless Application Repository ou de um bucket do Amazon S3 como um aplicativo aninhado. Os aplicativos aninhados são implantados como recursos AWS::CloudFormation::Stack aninhados, que podem conter vários outros recursos, incluindo outros recursos AWS::Serverless::Application.

nota

Quando você implanta o AWS CloudFormation, AWS SAM transforma seus recursos AWS SAM em recursos CloudFormation. Para obter mais informações, consulte Recursos gerados do CloudFormation para o AWS SAM.

Sintaxe

Para declarar esta entidade no modelo do AWS Serverless Application Model (AWS SAM), use a seguinte sintaxe:

YAML

Type: AWS::Serverless::Application Properties: Location: String | ApplicationLocationObject NotificationARNs: List Parameters: Map Tags: Map TimeoutInMinutes: Integer

Propriedades

Location

URL do modelo, caminho do arquivo ou objeto de localização de um aplicativo aninhado.

Se um URL de modelo for fornecido, ele deverá seguir o formato especificado na documentação do CloudFormation TemplateURL e conter um modelo válido do CloudFormation e conter um modelo válido do CloudFormation ou do SAM. Um ApplicationLocationObject pode ser usado para especificar um aplicativo que foi publicado no AWS Serverless Application Repository.

Se um caminho de arquivo local for fornecido, o modelo deverá passar pelo fluxo de trabalho que inclui o comando sam deploy ou sam package para que o aplicativo seja transformado adequadamente.

Tipo: String | ApplicationLocationObject

Obrigatório: Sim

Compatibilidade CloudFormation: essa propriedade é semelhante à propriedade TemplateURL de um recurso AWS::CloudFormation::Stack. A versão do CloudFormation não precisa de um ApplicationLocationObject para recuperar um aplicativo do AWS Serverless Application Repository.

NotificationARNs

Uma lista de tópicos existentes do Amazon SNS onde as notificações sobre eventos da pilha são enviadas.

Tipo: lista

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade NotificationARNs de um recurso AWS::CloudFormation::Stack.

Parameters

Valores do parâmetro do aplicativo.

Tipo: mapa

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade Parameters de um recurso AWS::CloudFormation::Stack.

Tags

Um mapa (string para string) que especifica as tags a serem adicionadas a este aplicativo. As chaves e valores são limitados a caracteres alfanuméricos. As chaves podem ter de 1 a 127 caracteres Unicode e não podem ser prefixadas com aws:. Os valores podem ter de 1 a 255 caracteres Unicode.

Tipo: mapa

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é semelhante à propriedade Tags de um recurso AWS::CloudFormation::Stack. A propriedade Tags no SAM consiste em pares Key:Value; no CloudFormation consiste em uma lista de objetos Tag. Quando a pilha for criada, o SAM adicionará automaticamente uma tag lambda:createdBy:SAM a esse aplicativo. Além disso, se esse aplicativo for do AWS Serverless Application Repository, o SAM também enviará automaticamente as duas tags adicionais serverlessrepo:applicationId:ApplicationId e serverlessrepo:semanticVersion:SemanticVersion.

TimeoutInMinutes

O tempo, em minutos, que o CloudFormation aguarda para que a pilha aninhada atinja o estado CREATE_COMPLETE. O padrão é nenhum tempo limite. Quando o CloudFormation detecta que a pilha aninhada atingiu o estado CREATE_COMPLETE, ele marca os recursos da pilha aninhada como CREATE_COMPLETE na pilha pai e continua a criar a pilha pai. Se o tempo limite expirar antes da pilha aninhada atingir CREATE_COMPLETE, o CloudFormation marca a pilha aninhada como com falha e reverte a pilha aninhada e a pilha pai.

Tipo: inteiro

Obrigatório: não

Compatibilidade CloudFormation: essa propriedade é passada diretamente para a propriedade TimeoutInMinutes de um recurso AWS::CloudFormation::Stack.

Valores de retorno

Ref.

Quando o ID lógico desse recurso for fornecido para a função intrínseca Ref, retorna o nome do recurso do recurso AWS::CloudFormation::Stack subjacente.

Para obter mais informações sobre como usar a função Ref, consulte Ref no Guia do usuário do AWS CloudFormation.

Fn::GetAtt

Fn::GetAtt retorna um valor para um atributo especificado deste tipo. Estes são os atributos disponíveis e os valores de retorno de amostra.

Para obter mais informações sobre o uso do Fn::GetAtt, consulte o Fn::GetAtt no AWS CloudFormation Guia do usuário.

Outputs.ApplicationOutputName

O valor da saída da pilha com nome ApplicationOutputName.

Exemplos

Aplicativo SAR

Aplicativo que usa um modelo do repositório de aplicativo com tecnologia sem servidor

YAML

Type: AWS::Serverless::Application Properties: Location: ApplicationId: 'arn:aws:serverlessrepo:us-east-1:012345678901:applications/my-application' SemanticVersion: 1.0.0 Parameters: StringParameter: parameter-value IntegerParameter: 2

Aplicativo normal

Aplicativo a partir de um URL do S3

YAML

Type: AWS::Serverless::Application Properties: Location: https://s3.amazonaws.com/sam-s3-demo-bucket/template.yaml