Composants d’assistance

La section d’utilisation principale des composants dans un StyleBook est de générer des objets de configuration via les types intégrés Nitro ou un autre StyleBook qui crée les objets de configuration réels. Les composants d’assistance ne construisent pas d’objets de configuration par eux-mêmes. Les composants d’assistance prennent les entrées d’autres sections comme les objets de paramètre, les propriétés d’autres composants ou les sorties d’autres composants et les transforment en d’autres formes. Cela peut être utilisé ultérieurement par d’autres composants pour générer les objets de configuration réels. Un composant d’assistance peut être de deux types : un type d’objet ou un autre StyleBook qui ne contient pas de section de composant.

L’exemple suivant montre un extrait d’un StyleBook utilisé pour créer un serveur d’équilibrage de charge avec moniteur (lb-mon-comp) sur une instance de Citrix ADC.

parameters:

  -

    name: appname

    type: string

  -

    name: ips

    type: ipaddress[]

  -

    name: vip

    type: ipaddress

components:

  -

    name: help-comp

    type: cmtypes::server-ip-port-params

    repeat:

      repeat-list: $parameters.ips

      repeat-item: server-ip

    properties:

      ip: $server-ip

      port: 80

 -

    name: lb-mon-comp

    type: stlb::lb-mon

    properties:

      lb-appname: $parameters.appname

      lb-virtual-ip: $parameters.vip

      lb-virtual-port: 80

      lb-service-type: HTTP

      svc-service-type: HTTP

      svc-servers: $components.help-comp.properties

La section Paramètres vous permet d’entrer le nom de l’application et les adresses IP des serveurs d’équilibrage de charge. Dans la section composant lb-mon-comp, le paramètre svc-servers de lb-mon StyleBook attend une liste d’objets où chaque élément comporte deux sous-paramètres : ip et port.

Cependant, la section paramètres de ce StyleBook accepte uniquement les adresses IP du serveur via $parameters.ips. Le StyleBook suppose que tous les serveurs s’exécutent sur le port 80. Pour créer la configuration d’équilibrage de charge à l’aide de lb-mon StyleBook, vous devez transformer $parameters.ips en une liste d’objets. Ceci est réalisé en utilisant le composant helper, help-comp dans l’exemple ci-dessus.Le composant help-comp est de type server-ip-port-params StyleBook. Ce StyleBook ne comporte aucun composant. Par conséquent, il ne crée aucun objet de configuration. L’help-comp crée une liste de répétition sur $parameters.ips et construit un objet qui se compose d’ip et de port (qui est défini sur un 80 statique) pour chaque élément de $parameters.ips. Ainsi, help-comp transforme une liste d’adresses IP en une liste d’objets qui peuvent être utilisés ultérieurement dans lb-mon-comp pour attribuer la propriété svc-servers. Le résultat de l’help-comp est affecté à la propriété svc-servers de lb-mon-comp.

Composants d’assistance