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

L'infrastructure des composants sous forme de fichiers de code (IAC) est similaire à celle des autresAWS Proton ressources. Découvrez ici certains détails spécifiques aux composants. Pour des informations complètes sur la création de fichiers iAC pourAWS 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 desAWS 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 les entrées, les sorties et les valeurs de ressources 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 reçoit 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 de paramètres dans les fichiers IAC des composants et des services associés, reportez-vous à la sectionDétails et exemples des paramètres du fichier CloudFormation iAC du composant. Pour des informations générales surAWS Proton les paramètres et une référence complète de l'espace de noms des paramètres, reportez-vous à la sectionAWS 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 à avoir des composants attachés. Consultez le supportedComponentSourcesparamètre de l'action d'CreateServiceTemplateVersionAPI dans la référence deAWS Proton l'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) 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 soit attaché à une instance de service. Vous ne pouvez pas non plus garantir l'existence de noms de sortie de composants spécifiques ou la validité et la sécurité des valeurs de ces sorties.

AWS Protonet la syntaxe Jinja vous aident à résoudre ces problèmes et à créer des modèles de service robustes qui s'affichent sans défaillance de la manière suivante :

  • AWS Protonfiltres 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 mettent en forme 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 ressource ou à une propriété de sortie unique d'un composant, vous pouvez garantir que le rendu de votre modèle de service n'échouera pas en utilisant ledefault 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 affichée à la place, et le rendu est réussi. Pour plus d'informations, consultez 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 ledefault filtre, qui fournit une valeur par défaut lorsque la propriété référencée n'existe pas.

  • Référence complète de l'objet : lorsque vous faites référence à l'ensemble du composant, ou à la collection des sorties d'un composant,AWS Proton renvoie un objet vide et garantit ainsi que le rendu de votre modèle de service n'échouera pas.{} Vous ne devez pas utiliser de filtre. Veillez à faire la référence dans un contexte pouvant contenir un objet vide, ou utilisez une{{ if .. }} condition pour tester la présence d'un objet vide.

    Exemples :

    • {{ service_instance.components.default }}

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