AWS::Serverless::Application - 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.

AWS::Serverless::Application

Intègre une application sans serveur à partir du AWS Serverless Application Repository ou à partir d'un compartiment Amazon S3 comme application imbriquée. Les applications imbriquées sont déployées en tant que ressourcesAWS::CloudFormation::Stack, qui peuvent contenir plusieurs autres ressources, y compris d'autres ressources AWS::Serverless::Application.

Note

Lorsque vous déployez vers AWS CloudFormation, vos AWS SAM ressources sont AWS SAM transformées en AWS CloudFormation ressources. Pour plus d’informations, consultez AWS CloudFormation Ressources générées.

Syntaxe

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

YAML

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

Propriétés

Location

URL du modèle, chemin d'accès au fichier ou objet d'emplacement d'une application imbriquée.

Si une URL de modèle est fournie, elle doit suivre le format spécifié dans la CloudFormation TemplateUrl documentation et contenir un modèle valide CloudFormation ou SAM. Une ApplicationLocationObject peut être utilisée pour spécifier une application qui a été publiée dans le AWS Serverless Application Repository.

Si un chemin d'accès de fichier local est fourni, le modèle doit passer par le flux comprenant la propriété sam deploy ou sam package, afin que l'application soit correctement transformée.

Type : Chaîne | ApplicationLocationObject

Obligatoire : oui

AWS CloudFormation compatibilité : cette propriété est similaire à celle TemplateURL d'une AWS::CloudFormation::Stack ressource. La CloudFormation version ne nécessite pas de fichier ApplicationLocationObject pour récupérer une application depuis le AWS Serverless Application Repository.

NotificationARNs

Une liste des rubriques Amazon SNS existantes dans lesquelles les notifications relatives aux événements de la pile sont envoyées.

Type : liste

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la NotificationARNs propriété d'une AWS::CloudFormation::Stack ressource.

Parameters

Valeurs des paramètres de l'application.

Type: carte (map)

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Parameters propriété d'une AWS::CloudFormation::Stack ressource.

Tags

Un mappage (chaîne à chaîne) qui spécifie les balises à ajouter à cette application. Les clés et les valeurs sont limitées aux caractères alphanumériques. Les clés peuvent comporter de 1 à 127 caractères Unicode en longueur et ne peut pas être précédée de « aws: ». Les valeurs de balise doivent comporter de 1 à 255 caractères Unicode en longueur.

Type: carte (map)

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle Tags d'une AWS::CloudFormation::Stack ressource. La propriété Tags dans SAM se compose de paires Key:Value ; CloudFormation elle consiste en une liste d'objets Tag. Lorsque la pile est créée, SAM ajoute automatiquement une balise lambda:createdBy:SAM à cette application. De plus, si cette application provient du AWS Serverless Application Repository, SAM ajoutera automatiquement les deux balises supplémentaires serverlessrepo:applicationId:ApplicationId etserverlessrepo:semanticVersion:SemanticVersion.

TimeoutInMinutes

Durée, en minutes, pendant laquelle AWS CloudFormation la pile imbriquée doit atteindre cet état. CREATE_COMPLETE La valeur par défaut m'inclut pas d'expiration. Lorsqu'il AWS CloudFormation détecte que la pile imbriquée a atteint CREATE_COMPLETE cet état, il marque la ressource de pile imbriquée comme étant CREATE_COMPLETE dans la pile parent et reprend la création de la pile parent. Si le délai expire avant que la pile imbriquée n'atteigne son objectifCREATE_COMPLETE, AWS CloudFormation marque la pile imbriquée comme ayant échoué et annule à la fois la pile imbriquée et la pile parent.

Type : entier

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la TimeoutInMinutes propriété d'une AWS::CloudFormation::Stack ressource.

Valeurs renvoyées

Réf

Lorsque l'ID logique de cette ressource est fournie à la fonction intrinsèque Ref, elle renvoie le nom de la ressource AWS::CloudFormation::Stack sous-jacente.

Pour plus d'informations sur l'utilisation de la fonction Ref, consultez Ref dans le Guide de l'utilisateur AWS CloudFormation .

Ventilateur : GetAtt

Fn::GetAtt renvoie une valeur pour un attribut de ce type indiqué. Voici les attributs disponibles et des exemples de valeurs de retour.

Pour plus d'informations sur l'utilisation de Fn::GetAtt, consultez Fn::GetAtt dans le Guide de l'utilisateur AWS CloudFormation .

Outputs.ApplicationOutputName

La valeur de la sortie de la pile avec le nomApplicationOutputName.

Exemples

Application SAR

Application qui utilise un modèle à partir du 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

Application normale

Application à partir d'une URL S3

YAML

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