Résolution des propriétés en écriture seule - 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.

Résolution des propriétés en écriture seule

Avec le générateur CloudFormation iAC, vous pouvez générer un modèle à l'aide des ressources fournies dans votre compte qui ne sont pas déjà gérées par CloudFormation. Cependant, certaines propriétés de ressources sont désignées comme étant en écriture seule, ce qui signifie qu'elles peuvent être écrites mais ne peuvent pas être lues CloudFormation, par exemple par un mot de passe de base de données.

Lorsque vous générez CloudFormation des modèles à partir de ressources existantes, les propriétés en écriture seule constituent un défi. Dans la plupart des cas, CloudFormation convertit ces propriétés en paramètres dans le modèle généré. Cela vous permet de saisir les propriétés sous forme de valeurs de paramètres lors des opérations d'importation. Cependant, il existe des scénarios dans lesquels cette conversion n'est pas possible et CloudFormation gère ces cas différemment.

Propriétés mutuellement exclusives

Certaines ressources possèdent plusieurs ensembles de propriétés qui s'excluent mutuellement, dont au moins certaines sont en écriture seule. Dans ces cas, le générateur IaC ne peut pas déterminer quel ensemble de propriétés exclusives a été appliqué à la ressource lors de sa création. Par exemple, vous pouvez fournir le code pour AWS::Lambda::Functionutiliser l'un de ces ensembles de propriétés.

  • Code/S3BucketCode/S3Key, et éventuellement Code/S3ObjectVersion

  • Code/ImageUri

  • Code/ZipFile

Toutes ces propriétés sont accessibles en écriture seule. Le générateur IaC sélectionne l'un des ensembles de propriétés exclusifs et les ajoute au modèle généré. Des paramètres sont ajoutés pour chacune des propriétés en écriture seule. Les noms des paramètres incluent OneOf et les descriptions des paramètres indiquent que la propriété correspondante peut être remplacée par d'autres propriétés exclusives. Le générateur IaC définit un type d'avertissement MUTUALLY_EXCLUSIVE_PROPERTIES pour les propriétés incluses.

Types mutuellement exclusifs

Dans certains cas, une propriété en écriture seule peut comporter plusieurs types de données. Par exemple, la Body propriété de AWS::ApiGateway::RestApipeut être un object ou unstring. Dans ce cas, le générateur IaC inclut la propriété dans le modèle généré en utilisant le type de string et définit un type d'avertissement deMUTUALLY_EXCLUSIVE_TYPES.

Propriétés de Array

Si une propriété en écriture seule possède un type dearray, le générateur IaC ne peut pas l'inclure dans le modèle généré car les paramètres ne peuvent être que des valeurs scalaires. Dans ce cas, la propriété est omise du modèle et le type d'avertissement UNSUPPORTED_PROPERTIES est défini.

Propriétés facultatives

Pour les propriétés facultatives en écriture seule, le générateur IaC ne peut pas détecter si la propriété a été utilisée lors de la configuration de la ressource. Dans ce cas, la propriété est omise du modèle généré et le type d'avertissement UNSUPPORTED_PROPERTIES est défini.

Avertissements et prochaines étapes

Pour déterminer quelles propriétés sont en écriture seule, vous devez examiner les avertissements renvoyés par la console du générateur IaC. La AWS référence aux types de ressources et de propriétés documentation n'indique pas si une propriété est en écriture seule ou si elle prend en charge plusieurs types.

Vous pouvez également voir quelles propriétés sont en écriture seule à partir des schémas du fournisseur de ressources. Pour télécharger les schémas des fournisseurs de ressources, consultezCloudFormation schémas de fournisseurs de ressources. Pour plus d'informations, consultez le schéma du fournisseur de ressources dans le guide de l'utilisateur de l'interface de ligne de CloudFormation commande.

Pour résoudre les problèmes liés aux propriétés en écriture seule
  1. Ouvrez la page du générateur iAC de la CloudFormation console.

  2. Dans la barre de navigation en haut de l'écran, choisissez le modèle correspondant Région AWS à votre modèle.

  3. Cliquez sur l'onglet Modèles, puis choisissez le nom du modèle que vous avez créé.

  4. Dans l'onglet Définition du modèle, lorsque le modèle généré inclut des ressources avec des propriétés d'écriture seule, la console du générateur iAC affiche un avertissement avec un résumé du type de problème. Par exemple :

    Avertissement de la console du générateur IaC concernant les propriétés en écriture seule dans le modèle généré
  5. Choisissez Afficher les détails de l'avertissement pour plus de détails. Les ressources dotées de propriétés d'écriture seule sont identifiées par l'ID logique utilisé dans le modèle et le type de ressource générés.

    Utilisez la liste des avertissements pour identifier les ressources dotées de propriétés d'écriture seule et examinez chaque ressource pour déterminer les modifications (le cas échéant) à apporter au modèle généré.

    Avertissements détaillés de la console du générateur iAC concernant les propriétés en écriture seule dans le modèle généré
  6. Si votre modèle doit être mis à jour pour résoudre les problèmes liés aux propriétés en écriture seule, procédez comme suit :

    1. Choisissez Télécharger pour télécharger une copie du modèle.

    2. Modifiez votre modèle.

    3. Lorsque les modifications sont terminées, vous pouvez cliquer sur le bouton Importer le modèle modifié pour poursuivre le processus d'importation.