Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Comment résoudre les problèmes liés aux propriétés en écriture seule dans les ressources AWS::Lambda::Function

Mode de mise au point
Comment résoudre les problèmes liés aux propriétés en écriture seule dans les ressources AWS::Lambda::Function - AWS CloudFormation

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.

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.

Cette rubrique explique comment résoudre les problèmes liés aux propriétés en écriture seule dans les AWS::Lambda::Functionressources lors de l'utilisation du générateur IaC.

Problème

La AWS::Lambda::Function ressource possède trois ensembles de propriétés qui s'excluent mutuellement pour spécifier le code Lambda :

  • Code/S3Bucketet les Code/S3Key propriétés, et éventuellement la Code/S3ObjectVersion propriété

  • propriété Code/ImageUri

  • propriété Code/ZipFile

Un seul de ces ensembles peut être utilisé pour une AWS::Lambda::Function ressource donnée.

Le générateur IaC ne peut pas déterminer quel ensemble de propriétés exclusives en écriture seule a été utilisé pour créer ou mettre à jour la ressource. Par conséquent, il inclut uniquement le premier ensemble de propriétés dans le modèle généré. Les Code/ZipFile propriétés Code/ImageUri et sont omises.

En outre, le générateur IaC émet les avertissements suivants :

  • MUTUALLY_EXCLUSIVE_PROPERTIES— Avertit que Code/S3Bucket et Code/S3Key sont identifiées comme des propriétés mutuellement exclusives.

  • UNSUPPORTED_PROPERTIES— Avertit que la Code/S3ObjectVersion propriété n'est pas prise en charge.

Pour inclure AWS::Lambda::Function des ressources dans un modèle généré, vous devez télécharger et mettre à jour le modèle avec les propriétés de code correctes.

Résolution

Si vous stockez votre code Lambda dans un compartiment Amazon S3 et que vous n'utilisez pas cette S3ObjectVersion propriété, vous pouvez importer le modèle généré sans aucune modification. Le générateur iAC vous demandera le compartiment et la clé Amazon S3 comme paramètres de modèle lors de l'opération d'importation.

Si vous stockez votre code Lambda dans un ECR référentiel Amazon, vous pouvez mettre à jour votre modèle en suivant les instructions suivantes :
  1. Téléchargez le modèle généré.

  2. Supprimez les propriétés et les paramètres correspondants pour les Code/S3Key propriétés Code/S3Bucket et du modèle généré.

  3. Remplacez les propriétés supprimées dans le modèle généré par la Code/ImageUri propriété, en spécifiant URL celles du ECR référentiel Amazon.

  4. Ouvrez le modèle généré dans la console du générateur iAC et cliquez sur le bouton Importer le modèle modifié.

Si vous stockez votre code Lambda sous forme de fichier zip, vous pouvez mettre à jour votre modèle en suivant les instructions suivantes :
  1. Téléchargez le modèle généré.

  2. Supprimez les propriétés et les paramètres correspondants pour les Code/S3Key propriétés Code/S3Bucket et du modèle généré.

  3. Remplacez les propriétés supprimées dans le modèle généré par la Code/ZipFile propriété.

  4. Ouvrez le modèle généré dans la console du générateur iAC et cliquez sur le bouton Importer le modèle modifié.

Si vous n'avez pas de copie de votre code Lambda, vous pouvez mettre à jour votre modèle en suivant les instructions suivantes :
  1. Utilisez l' AWS Lambda GetFunctionAPIaction (par exemple, en utilisant la aws lambda get-function AWS CLI commande).

  2. Dans la réponse, le RepositoryType paramètre est de S3 savoir si le code se trouve dans un compartiment Amazon S3 ou ECR s'il se trouve dans un ECR référentiel Amazon.

  3. Dans la réponse, le Location paramètre contient un document pré-signé URL que vous pouvez utiliser pour télécharger le package de déploiement pendant 10 minutes. Téléchargez le code.

  4. Téléchargez le code dans un compartiment Amazon S3.

  5. Exécutez une opération d'importation avec le modèle généré et fournissez le nom du compartiment et la clé sous forme de valeurs de paramètre.

Sur cette page

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.