

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
<a name="sam-resource-layerversion"></a>

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](#sam-resource-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](building-layers.md).

**Remarque importante** : depuis la publication de l'attribut de [UpdateReplacePolicy](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html)ressource dans CloudFormation, [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html)(recommandé) offre les mêmes avantages que[AWS::Serverless::LayerVersion](#sam-resource-layerversion).

Lorsqu'un Serverless LayerVersion est transformé, SAM transforme é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 CloudFormation ressources. Pour de plus amples informations, veuillez consulter [CloudFormation Ressources générées pour AWS SAM](sam-specification-generated-resources.md).

## Syntaxe
<a name="sam-resource-layerversion-syntax"></a>

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

### YAML
<a name="sam-resource-layerversion-syntax.yaml"></a>

```
Type: AWS::Serverless::LayerVersion
Properties:
  [CompatibleArchitectures](#sam-layerversion-compatiblearchitectures): List
  [CompatibleRuntimes](#sam-layerversion-compatibleruntimes): List
  [ContentUri](#sam-layerversion-contenturi): String | LayerContent
  [Description](#sam-layerversion-description): String
  [LayerName](#sam-layerversion-layername): String
  [LicenseInfo](#sam-layerversion-licenseinfo): String
  [PublishLambdaVersion](#sam-layerversion-PublishLambdaVersion): Boolean
  [RetentionPolicy](#sam-layerversion-retentionpolicy): String
```

## Propriétés
<a name="sam-resource-layerversion-properties"></a>

 `CompatibleArchitectures`   <a name="sam-layerversion-compatiblearchitectures"></a>
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](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) dans le *guide du développeur AWS Lambda *.  
*Valeurs valides *: `x86_64`, `arm64`  
*Type* : liste  
*Obligatoire* : non  
*Par défaut* : `x86_64`  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CompatibleArchitectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatiblearchitectures)` propriété d'une `AWS::Lambda::LayerVersion` ressource.

 `CompatibleRuntimes`   <a name="sam-layerversion-compatibleruntimes"></a>
Liste des runtimes compatibles avec cela LayerVersion.  
*Type* : liste  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[CompatibleRuntimes](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-compatibleruntimes)` propriété d'une `AWS::Lambda::LayerVersion` ressource.

 `ContentUri`   <a name="sam-layerversion-contenturi"></a>
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 archive ZIP valide contenant le contenu d'une couche [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).  
Si le chemin d'accès vers un fichier local est fourni, le modèle doit passer par le flux comprenant [sam build](sam-cli-command-reference-sam-build.md) suivie par [sam deploy](sam-cli-command-reference-sam-deploy.md) ou [sam package](sam-cli-command-reference-sam-package.md), 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 \$1 [LayerContent](sam-property-layerversion-layercontent.md)  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[Content](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-content)` d'une `AWS::Lambda::LayerVersion` ressource. Les propriétés imbriquées d'Amazon S3 sont nommées différemment.

 `Description`   <a name="sam-layerversion-description"></a>
Description de cette couche.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-description)` propriété d'une `AWS::Lambda::LayerVersion` ressource.

 `LayerName`   <a name="sam-layerversion-layername"></a>
Nom ou Amazon Resource Name (ARN) de la couche.  
*Type* : chaîne  
*Obligatoire* : non  
*Par défaut* : ID logique de ressource  
*CloudFormation compatibilité* : cette propriété est similaire à celle `[LayerName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-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`   <a name="sam-layerversion-licenseinfo"></a>
Informations sur la licence correspondante LayerVersion.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[LicenseInfo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversion.html#cfn-lambda-layerversion-licenseinfo)` propriété d'une `AWS::Lambda::LayerVersion` ressource.

 `PublishLambdaVersion`   <a name="sam-layerversion-PublishLambdaVersion"></a>
Une propriété opt-in qui crée une nouvelle version de Lambda chaque fois qu'une modification est apportée à la `LayerVersion` ressource référencée. Lorsqu'elle est activée avec `AutoPublishAlias` et `AutoPublishAliasAllProperties` dans la fonction Lambda connectée, une nouvelle version Lambda sera créée pour chaque modification apportée à la ressource. `LayerVersion`  
*Type* : valeur booléenne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.

 `RetentionPolicy`   <a name="sam-layerversion-retentionpolicy"></a>
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'`UpdateReplacePolicy`attribut doit être activé. Pour plus d'informations à ce sujet, reportez-vous à la section [`UpdateReplacePolicy`attribut](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html) du *guide de AWS CloudFormation l'utilisateur*.  
*Valeurs valides* : `Retain` ou `Delete`  
*Type :* chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est unique AWS SAM et n'a pas d' CloudFormation équivalent.  
*Remarques supplémentaires* : Lorsque vous spécifiez`Retain`, AWS SAM ajoute un [Attributs de ressources pris en charge par AWS SAM](sam-specification-resource-attributes.md) de `DeletionPolicy: Retain` à la `AWS::Lambda::LayerVersion` ressource transformée.

## Valeurs renvoyées
<a name="sam-resource-layerversion-return-values"></a>

### Réf
<a name="sam-resource-layerversion-return-values-ref"></a>

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

Pour plus d'informations sur l'utilisation de la fonction `Ref`, consultez [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) dans le *Guide de l'utilisateur AWS CloudFormation *. 

## Exemples
<a name="sam-resource-layerversion--examples"></a>

### LayerVersionExample
<a name="sam-resource-layerversion--examples--layerversionexample"></a>

Exemple de LayerVersion

#### YAML
<a name="sam-resource-layerversion--examples--layerversionexample--yaml"></a>

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

# LayerContent
<a name="sam-property-layerversion-layercontent"></a>

Une archive ZIP hébergeant le contenu d'une [couche Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).

## Syntaxe
<a name="sam-property-layerversion-layercontent-syntax"></a>

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

### YAML
<a name="sam-property-layerversion-layercontent-syntax.yaml"></a>

```
  [Bucket](#sam-layerversion-layercontent-bucket): String
  [Key](#sam-layerversion-layercontent-key): String
  [Version](#sam-layerversion-layercontent-version): String
```

## Propriétés
<a name="sam-property-layerversion-layercontent-properties"></a>

 `Bucket`   <a name="sam-layerversion-layercontent-bucket"></a>
Compartiment Amazon S3 de l'archive de couche.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[S3Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3bucket)` propriété du type de `AWS::Lambda::LayerVersion` `Content` données.

 `Key`   <a name="sam-layerversion-layercontent-key"></a>
Clé Amazon S3 de l’archive de couche.  
*Type* : chaîne  
*Obligatoire* : oui  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[S3Key](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3key)` propriété du type de `AWS::Lambda::LayerVersion` `Content` données.

 `Version`   <a name="sam-layerversion-layercontent-version"></a>
Pour les objets versionnés, version de l’objet d’archive de couche à utiliser.  
*Type* : chaîne  
*Obligatoire* : non  
*CloudFormation compatibilité* : cette propriété est transmise directement à la `[S3ObjectVersion](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-layerversion-content.html#cfn-lambda-layerversion-content-s3objectversion)` propriété du type de `AWS::Lambda::LayerVersion` `Content` données.

## Exemples
<a name="sam-property-layerversion-layercontent--examples"></a>

### LayerContent
<a name="sam-property-layerversion-layercontent--examples--layercontent"></a>

Exemple de contenu de couche

#### YAML
<a name="sam-property-layerversion-layercontent--examples--layercontent--yaml"></a>

```
LayerContent:
  Bucket: amzn-s3-demo-bucket-name
  Key: mykey-name
  Version: 121212
```