Transformation - 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.

Transformation

La Transform section facultative indique une ou plusieurs macros AWS CloudFormation utilisées pour traiter votre modèle. La Transform section s'appuie sur le langage simple et déclaratif AWS CloudFormation d'un puissant système de macros.

Vous pouvez déclarer une ou plusieurs macros dans un modèle. AWS CloudFormation exécute les macros dans l'ordre dans lequel elles sont spécifiées. Lorsque vous créez un ensemble de modifications, il en AWS CloudFormation génère un qui inclut le contenu du modèle traité. Vous pouvez alors passer en revue les modifications et exécuter le jeu de modifications. Pour plus d’informations, consultez Utilisation de AWS CloudFormation macros pour effectuer un traitement personnalisé sur les modèles.

AWS CloudFormation prend également en charge les transformations, qui sont des macros hébergées par AWS CloudFormation. AWS CloudFormation traite ces transformations de la même manière que toutes les macros que vous créez en termes d'ordre d'exécution et de portée. Pour plus d'informations sur des transformations spécifiques, consultez la section Référence sur les transformations.

Pour déclarer plusieurs macros, utilisez un format de liste et spécifiez une ou plusieurs macros.

Par exemple, dans l'exemple de modèle ci-dessous, AWS CloudFormation évalue MyMacro puis AWS::Serverless traite le contenu de l'ensemble du modèle en raison de son inclusion dans la Transform section.

// Start of processable content for MyMacro and AWS::Serverless Transform: - MyMacro - 'AWS::Serverless' Resources: WaitCondition: Type: 'AWS::CloudFormation::WaitCondition' MyBucket: Type: 'AWS::S3::Bucket' Properties: BucketName: MyBucket Tags: [{"key":"value"}] CorsConfiguration:[] MyEc2Instance: Type: 'AWS::EC2::Instance' Properties: ImageID: "ami-123" // End of processable content for MyMacro and AWS::Serverless