AWS::Serverless::LayerVersion - 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::LayerVersion

Crée un Lambda LayerVersion qui contient la bibliothèque ou le code d'exécution nécessaire à une fonction Lambda.

La AWS::Serverless::LayerVersion ressource prend également en charge l'attribut Metadata resource, ce qui vous permet de demander AWS SAM de créer des couches incluses dans votre application. Pour plus d'informations sur les couches de construction, consultez Création de couches Lambda dans AWS SAM.

Remarque importante : Depuis la publication de l'attribut de UpdateReplacePolicyressource dans AWS CloudFormation, AWS::Lambda::LayerVersion(recommandé) offre les mêmes avantages queAWS::Serverless::LayerVersion.

Lorsqu'un Serverless LayerVersion est transformé, il transforme SAM également l'identifiant logique de la ressource afin que les anciens ne LayerVersions soient pas automatiquement supprimés CloudFormation lors de la mise à jour de la ressource.

Note

Lorsque vous déployez vers AWS CloudFormation, vos AWS SAM ressources sont AWS SAM transformées en AWS CloudFormation ressources. Pour de plus amples informations, veuillez consulter AWS CloudFormation Ressources générées pour AWS SAM.

Syntaxe

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

YAML

Type: AWS::Serverless::LayerVersion Properties: CompatibleArchitectures: List CompatibleRuntimes: List ContentUri: String | LayerContent Description: String LayerName: String LicenseInfo: String RetentionPolicy: String

Propriétés

CompatibleArchitectures

Précise les architectures de jeux d'instructions prises en charge pour la version de couche.

Pour en savoir plus sur cette propriété, consultez Architectures du jeu d'instructions Lambda dans le guide du développeur AWS Lambda .

Valeurs valides : x86_64, arm64

Type: liste

Obligatoire : non

Par défaut : x86_64

AWS CloudFormation compatibilité : cette propriété est transmise directement à la CompatibleArchitectures propriété d'une AWS::Lambda::LayerVersion ressource.

CompatibleRuntimes

Liste des runtimes compatibles avec cela LayerVersion.

Type: liste

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la CompatibleRuntimes propriété d'une AWS::Lambda::LayerVersion ressource.

ContentUri

Uri Amazon S3, chemin d'accès au dossier local ou LayerContent objet du code de couche.

Si un URI ou un LayerContent objet Amazon S3 est fourni, l'objet Amazon S3 référencé doit être une ZIP archive valide contenant le contenu d'une couche Lambda.

Si le chemin d'accès vers un fichier local est fourni, le modèle doit passer par le flux comprenant sam build suivie par sam deploy ou sam package, pour que le contenu soit correctement transformé. Par défaut, les chemins relatifs sont résolus en fonction de l'emplacement du AWS SAM modèle.

Type : Chaîne | LayerContent

Obligatoire : oui

AWS CloudFormation compatibilité : cette propriété est similaire à celle Content d'une AWS::Lambda::LayerVersion ressource. Les propriétés imbriquées d'Amazon S3 sont nommées différemment.

Description

Description de cette couche.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Description propriété d'une AWS::Lambda::LayerVersion ressource.

LayerName

Le nom ou Amazon Resource Name (ARN) de la couche.

Type : chaîne

Obligatoire : non

Par défaut : ID logique de ressource

AWS CloudFormation compatibilité : cette propriété est similaire à celle LayerName d'une AWS::Lambda::LayerVersion ressource. Si vous ne spécifiez pas de nom, l'ID logique de la ressource sera utilisée comme nom.

LicenseInfo

Informations sur la licence correspondante LayerVersion.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la LicenseInfo propriété d'une AWS::Lambda::LayerVersion ressource.

RetentionPolicy

Cette propriété indique si les anciennes versions de votre ressource LayerVersion sont conservées ou supprimées lorsque vous supprimez une ressource. Si vous devez conserver les anciennes versions de votre ressource LayerVersion lors de la mise à jour ou du remplacement d'une ressource, l'UpdateReplacePolicyattribut doit être activé. Pour plus d'informations à ce sujet, reportez-vous à la section UpdateReplacePolicyattribut du guide de AWS CloudFormation l'utilisateur.

Valeurs valides : Retain ou Delete

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

Remarques supplémentaires : Lorsque vous spécifiezRetain, AWS SAM ajoute un Attributs de ressources pris en charge par AWS SAM de DeletionPolicy: Retain à la AWS::Lambda::LayerVersion ressource transformée.

Valeurs renvoyées

Réf

Lorsque l'identifiant logique de cette ressource est fourni à la fonction Ref intrinsèque, elle renvoie la ressource ARN du Lambda LayerVersion sous-jacent.

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

Exemples

LayerVersionExample

Exemple de LayerVersion

YAML

Properties: LayerName: MyLayer Description: Layer description ContentUri: 's3://amzn-s3-demo-bucket/my-layer.zip' CompatibleRuntimes: - nodejs10.x - nodejs12.x LicenseInfo: 'Available under the MIT-0 license.' RetentionPolicy: Retain