Application Delivery Management

Parameters-default-sources construct

Vous pouvez utiliser cette construction pour réutiliser les définitions de paramètres d’autres StyleBooks.

Imaginons un scénario dans lequel un paramètre ou un groupe de paramètres est utilisé à plusieurs reprises dans plusieurs StyleBooks. Pour éviter de redéfinir ces paramètres, chaque fois que vous souhaitez créer un nouveau StyleBook, vous pouvez les définir une fois, puis importer leurs définitions dans les StyleBooks qui ont besoin de ces paramètres à l’aide de la construction parameters-default-sources.

Par exemple, si plusieurs de vos StyleBooks doivent configurer une adresse IP virtuelle, vous devrez peut-être définir les mêmes paramètres liés aux adresses IP virtuelles dans chaque nouveau StyleBook que vous créez. Au lieu de cela, vous pouvez créer un StyleBook distinct appelé, par exemple, « vip-params » dans lequel vous définissez tous les paramètres associés, comme indiqué dans l’exemple suivant :

     -
     name: vip-params
     namespace: com.acme.commontypes
     version: "1.0"
     description: This StyleBook defines a typical virtual IP config.
     private: true
     schema-version: "1.0"
     parameters:
       -
           name: lb-appname
           label: Load Balanced Application Name
          description: Name of the Load Balanced application
           type: string
           required: true
       -
           name: lb-virtual-ip
           label: Load Balanced App Virtual IP address
           description: Virtual IP address representing the Load Balanced application
           type: ipaddress
           required: true
       -
           name: lb-virtual-port
           label: Load Balanced App Virtual Port
           description: TCP port representing the Load Balanced application
           type: tcp-port
           default: 80
       -
           name: lb-service-type
           label: Load Balanced App Protocol
           description: Protocol used for the Load Balanced application.
           type: string
           default: HTTP
           required: true
           allowed-values:
                - HTTP
                - SSL
                - TCP
<!--NeedCopy-->

Ensuite, vous pouvez créer d’autres StyleBooks utilisant ces paramètres. Voici un exemple d’un tel StyleBook.

     -
     name: acme-biz-app
     namespace: com.acme.stylebooks
     version: "1.0"
     description: This stylebook defines the Citrix ADC configuration for Biz App
     schema-version: "1.0"
     import-stylebooks:
       -
          namespace: com.acme.commontypes
          prefix: cmtypes
          version: "1.0"
     parameters-default-sources:
           - cmtypes::vip-params
     parameters:
         -
           name: monitorname
           label: Monitor Name
           description: Name of the monitor
           type: string
           required: true
         -
           name: type
           label: Monitor Type
           description: Type of the monitor
           type: string
           required: true
           allowed-values:
             - PING
             - TCP
             - HTTP
             - HTTP-ECV
             - TCP-ECV
             - HTTP-INLINE
<!--NeedCopy-->

Dans StyleBook, acme-biz-app, tout d’abord, l’espace de noms et la version du styleBook vip-params sont importés à l’aide de la section « import-stylebooks ». Ensuite, la construction parameters-default-sources est ajoutée et le nom StyleBook, c’est-à-dire vip-params, est spécifié. Cela a le même effet que de définir les paramètres du styleBook vip-params directement dans ce StyleBook.

Vous pouvez inclure des paramètres de plusieurs StyleBooks, car les parameters-default-sources sont une liste et chaque élément de la liste doit être un StyleBook.

En plus d’inclure des paramètres provenant d’autres StyleBooks, vous pouvez également définir vos propres paramètres en utilisant la section des paramètres. La liste complète des paramètres du StyleBook est la combinaison de paramètres inclus dans d’autres StyleBooks et de paramètres définis dans ce StyleBook. Par conséquent, l’expression $parameters fait référence à cette combinaison de paramètres.

Notez que si un paramètre est défini à la fois dans un StyleBook importé et dans le StyleBook actuel, la définition du StyleBook actuel remplace la définition importée depuis un autre StyleBook. Vous pouvez l’utiliser efficacement en personnalisant certains paramètres importés si nécessaire, tout en utilisant les autres paramètres importés tels quels.

La construction parameters-default-sources peut également être utilisée dans les paramètres imbriqués comme indiqué :

parameters:
    -
      name: vip-details
      label: Virtual IP details
      description: Details of the Virtual IP
      type: object
      required: true
      parameters-default-sources:
              - cmtypes::vip-params
<!--NeedCopy-->

Cela revient à ajouter les paramètres des paramètres vip-params de StyleBook directement en tant que paramètres enfants du paramètre vip-details dans ce StyleBook.

Parameters-default-sources construct