Infrastructure de composants sous forme de fichiers de code - AWS Proton

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.

Infrastructure de composants sous forme de fichiers de code

Les fichiers d'infrastructure de composants sous forme de code (IaC) sont similaires à ceux des autres AWS Proton ressources. Découvrez ici certains détails spécifiques aux composants. Pour obtenir des informations complètes sur la création de fichiers iAc pour AWS Proton, consultezCréation de modèles et création de packs pour AWS Proton.

Utilisation de paramètres avec des composants

L'espace de noms de AWS Proton paramètres inclut certains paramètres auxquels un fichier IaC de service peut faire référence pour obtenir le nom et les sorties d'un composant associé. L'espace de noms inclut également des paramètres auxquels un fichier iAC de composant peut faire référence pour obtenir des entrées, des sorties et des valeurs de ressources à partir de l'environnement, du service et de l'instance de service auxquels le composant est associé.

Un composant ne possède pas ses propres entrées : il obtient ses entrées de l'instance de service à laquelle il est attaché. Un composant peut également lire les sorties de l'environnement.

Pour plus d'informations sur l'utilisation des paramètres dans les fichiers iAc des composants et des services associés, consultezDétails et exemples des paramètres du fichier CloudFormation iAC du composant. Pour obtenir des informations générales sur AWS Proton les paramètres et une référence complète de l'espace de noms des paramètres, consultezAWS Proton paramètres.

Création de fichiers iAc robustes

En tant qu'administrateur, lorsque vous créez une version de modèle de service, vous pouvez décider si vous souhaitez autoriser les instances de service créées à partir de la version du modèle à être associées à des composants. Consultez le supportedComponentSourcesparamètre de l'action d'CreateServiceTemplateVersionAPI dans la référence AWS Proton d'API. Toutefois, pour toute future instance de service, la personne qui crée l'instance, décide d'y attacher ou non un composant et (dans le cas de composants définis directement) crée le composant iAC est généralement une personne différente : un développeur utilisant votre modèle de service. Par conséquent, vous ne pouvez pas garantir qu'un composant sera attaché à une instance de service. Vous ne pouvez pas non plus garantir l'existence de noms de sortie de composants spécifiques ni la validité et la sécurité des valeurs de ces sorties.

AWS Proton et la syntaxe Jinja vous aident à contourner ces problèmes et à créer des modèles de service robustes qui s'affichent sans faille de la manière suivante :

  • AWS Proton filtres de paramètres : lorsque vous faites référence aux propriétés de sortie des composants, vous pouvez utiliser des filtres de paramètres, c'est-à-dire des modificateurs qui valident, filtrent et formatent les valeurs des paramètres. Pour plus d’informations et d’exemples, consultez Filtres de paramètres pour les fichiers CloudFormation IaC.

  • Propriété unique par défaut : lorsque vous faites référence à une seule ressource ou propriété de sortie d'un composant, vous pouvez garantir que le rendu de votre modèle de service n'échouera pas en utilisant le default filtre, avec ou sans valeur par défaut. Si le composant, ou un paramètre de sortie spécifique auquel vous faites référence, n'existe pas, la valeur par défaut (ou une chaîne vide, si vous n'avez pas spécifié de valeur par défaut) est rendue à la place, et le rendu réussit. Pour de plus amples informations, veuillez consulter Fournir des valeurs par défaut pour les références inexistantes.

    Exemples :

    • {{ service_instance.components.default.name | default("") }}

    • {{ service_instance.components.default.outputs.my-output | default("17") }}

    Note

    Ne confondez pas la .default partie de l'espace de noms, qui désigne les composants directement définis, avec le default filtre, qui fournit une valeur par défaut lorsque la propriété référencée n'existe pas.

  • Référence d'objet complète : lorsque vous faites référence à l'ensemble du composant ou à la collection des sorties d'un composant, vous AWS Proton renvoyez un objet vide et vous {} garantissez ainsi que le rendu de votre modèle de service n'échouera pas. Vous n'êtes pas obligé d'utiliser de filtre. Assurez-vous de faire la référence dans un contexte qui peut prendre un objet vide ou d'utiliser une {{ if .. }} condition pour tester la présence d'un objet vide.

    Exemples :

    • {{ service_instance.components.default }}

    • {{ service_instance.components.default.outputs }}