Ceci est le guide du développeur du AWS CDK v2. L'ancien CDK v1 est entré en maintenance le 1er juin 2022 et a pris fin le 1er juin 2023.
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.
Mixages
Les mixins sont des fonctionnalités réutilisables que vous appliquez aux constructions à l'aide de la .with() méthode. Ils ajoutent des fonctionnalités aux constructions L1 (CloudFormationniveau) et L2 (basées sur l'intention), telles que le contrôle de version, la suppression automatique d'objets ou le blocage de l'accès public. Chaque mixin fonctionne sur une seule ressource. Pour connecter deux ressources, utilisez plutôt Facades.
Chaque mixin cible un type de ressource spécifique et porte le nom de cette ressource. Par exemple, BucketVersioning cible les compartiments Amazon S3. Vous accédez aux mixins via l'mixinsespace de noms de chaque module de service, tel que. s3.mixins
Appliquer des mixins
Vous appliquez des mixins à l'aide de la .with() méthode, qui est disponible sur toutes les constructions. Vous pouvez enchaîner plusieurs mixins ensemble :
Exemple
Chaque mixin déclare les types de ressources qu'il prend en charge. Si vous appliquez un mixin à une construction qu'il ne prend pas en charge, il est ignoré en silence. Cela signifie que vous pouvez appliquer des mixins à grande échelle en toute sécurité sans vous soucier des incohérences entre les types. Si vous devez vous assurer qu'un mixin est appliqué, utilisez requireAll()ou requireAny().
Utiliser Mixins avec les constructions L1 et L2
Les mixins fonctionnent avec les constructions L1 et L2. Lorsque vous appliquez un mixin à une construction L2, cela s'applique également à la ressource L1 qui la sous-tend.
L'exemple suivant montre comment appliquer des mixins aux constructions L1 et L2 :
Exemple
Propriétés des mélanges et des propriétés de construction
Les propriétés de mixage et de construction fonctionnent ensemble. Les propriétés de construction L2 configurent une ressource lorsque vous la créez. Les mixins peuvent être appliqués à tout moment.
- Utilisez les propriétés de construction L2 lorsque
-
Vous utilisez une construction L2 et la propriété dont vous avez besoin est disponible. Il s'agit de l'approche la plus simple.
- Utilisez Mixins lorsque
-
-
Vous travaillez avec une construction L1 et souhaitez des fonctionnalités de type L2.
-
Vous souhaitez ajouter une fonction à une construction L2 qui n'est pas disponible en tant que propriété.
-
Vous souhaitez appliquer la même fonctionnalité à plusieurs constructions de types différents.
-
Les mixins ne remplacent pas les propriétés de construction. Ils ne peuvent pas rendre une propriété obligatoire facultative ou modifier les valeurs par défaut.
Appliquer des mixins à plusieurs constructions
L'Mixins.of()API permet de mieux contrôler la manière dont les mixins sont appliqués dans un scope. Au lieu de faire appel .with() à des constructions individuelles, vous pouvez appliquer un mixin à toutes les constructions correspondantes d'une pile ou d'une portée en même temps :
Exemple
Par défaut, les constructions qui ne supportent pas le mixin sont ignorées silencieusement. requireAll()À utiliser pour affirmer que le mixin est appliqué à toutes les constructions de la sélection, ou requireAny() pour affirmer qu'il est appliqué à au moins une d'entre elles. Ceci est utile pour s'assurer que les ressources ont une configuration requise :
Exemple
Mixages et aspects
Les mixins et les aspects sont liés mais ont des objectifs différents :
-
Les mixins sont appliqués immédiatement lorsque vous appelez
.with(). Vous choisissez exactement les constructions auxquelles les appliquer. -
Les aspects s'appliquent lors de la synthèse à toutes les constructions d'un scope. Utilisez-les pour les politiques générales et les contrôles.
Utilisez Mixins pour ajouter une fonctionnalité à des constructions spécifiques. Utilisez Aspects pour appliquer des règles ou appliquer des modifications à l'ensemble de votre application.
Ressources connexes
-
Façades — Connectez les ressources aux principaux IAM et à d'autres services.
-
Aspects — Appliquez les modifications ou validez les constructions dans l'ensemble de votre application.
-
Constructions — Découvrez les constructions L1, L2 et L3.
-
Personnalisation des constructions : personnalisez les constructions avec des trappes d'échappement et des remplacements bruts.