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

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWS::Serverless::Application

Integrar una aplicación sin servidor desde AWS Serverless Application Repository o desde un bucket de Amazon S3 como una aplicación anidada. Las aplicaciones anidadas se implementan como recursos anidados AWS::CloudFormation::Stack, que pueden contener varios otros recursos, incluidos otros recursos AWS::Serverless::Application.

nota

Al realizar la implementación en AWS CloudFormation, AWS SAM transforma sus recursos de AWS SAM en recursos de AWS CloudFormation. Para obtener más información, consulte Recursos de AWS CloudFormation generados.

Sintaxis

Para declarar esta entidad en su plantilla de AWS Serverless Application Model (AWS SAM), use la siguiente sintaxis:

YAML

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

Propiedades

Location

URL de plantilla, ruta de archivo o objeto de ubicación de una aplicación anidada.

Si se proporciona una URL de plantilla, debe seguir el formato especificado en la CloudFormation TemplateUrl documentación y contener una plantilla SAM CloudFormation o válida. ApplicationLocationObject se puede utilizar para especificar una aplicación que se ha publicado en AWS Serverless Application Repository

Si se proporciona una ruta de archivo local, la plantilla debe seguir el flujo de trabajo que incluye el sam package o el comando sam deploy para que la aplicación se transforme correctamente.

Tipo: Cadena | ApplicationLocationObject

Obligatorio: sí

Compatibilidad con AWS CloudFormation: esta propiedad es similar a la propiedad TemplateURL de un recurso AWS::CloudFormation::Stack. La CloudFormation versión no tarda en ApplicationLocationObject recuperar una aplicación delAWS Serverless Application Repository.

NotificationARNs

Una lista de temas de Amazon SNS, a la que se envían notificaciones sobre eventos de la pila.

Tipo: lista

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad NotificationARNs de un recurso AWS::CloudFormation::Stack.

Parameters

Valores de los parámetros de aplicación.

Tipo: mapa

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad Parameters de un recurso AWS::CloudFormation::Stack.

Tags

Un mapa (cadena a cadena) que especifica las etiquetas agregadas a esta aplicación. Los valores y claves están limitados a caracteres alfanuméricos. Las claves pueden tener de 1 a 127 caracteres Unicode y no pueden ir precedidas de aws: Los valores pueden tener de 1 a 255 caracteres Unicode.

Tipo: mapa

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad es similar a la propiedad Tags de un recurso AWS::CloudFormation::Stack. La propiedad Tags de SAM consta de pares clave:valor; en CloudFormation ella, consiste en una lista de objetos Tag. Cuando se crea la pila, SAM añadirá automáticamente una etiqueta lambda:createdBy:SAM a esta aplicación. Además, si esta aplicación es de AWS Serverless Application Repository, SAM también enviará automáticamente las dos etiquetas adicionales serverlessrepo:applicationId:ApplicationId y serverlessrepo:semanticVersion:SemanticVersion.

TimeoutInMinutes

El periodo de tiempo, en minutos, que AWS CloudFormation espera a que la pila anidada alcance el estado CREATE_COMPLETE. El valor predeterminado es sin tiempo de espera. Cuando AWS CloudFormation detecta que la pila anidada ha alcanzado el estado CREATE_COMPLETE, marca el recurso de la pila anidada como CREATE_COMPLETE en la pila principal y reanuda la creación de la pila principal. Si el periodo de tiempo de espera vence antes de que la pila anidada alcance CREATE_COMPLETE, AWS CloudFormation marca la pila anidada como error y restaura la pila anidada y la pila principal.

Tipo: entero

Obligatorio: no

Compatibilidad con AWS CloudFormation: esta propiedad se transfiere directamente a la propiedad TimeoutInMinutes de un recurso AWS::CloudFormation::Stack.

Valores devueltos

Ref.

Cuando se proporciona el ID lógico de este recurso a la función intrínseca Ref, esta devuelve el nombre del recurso subyacente AWS::CloudFormation::Stack.

Para obtener más información sobre el uso de la función Ref, consulte Ref en la Guía del usuario de AWS CloudFormation.

Fn:: GetAtt

Fn::GetAtt devuelve un valor para un atributo especificado de este tipo. A continuación se indican los atributos disponibles y los valores devueltos de muestra.

Para obtener más información acerca de cómo usar Fn::GetAtt, consulte Fn::GetAtt en la Guía del usuario de AWS CloudFormation.

Outputs.ApplicationOutputName

El valor de la salida de la pila con su nombre ApplicationOutputName.

Ejemplos

Aplicaciones SAR

Aplicación que usa una plantilla del Serverless Application Repository

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

Aplicación normal

Aplicación desde una URL de S3

YAML

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