Application Delivery Management

Bedingungskonstrukt

Sie können eine Komponente durch die Verwendung eines Bedingungskonstrukts bedingt gestalten. Der Wert eines Bedingungskonstrukts ist ein boolescher Ausdruck, der zu ‘wahr’ oder ‘falsch’ ausgewertet wird. Ist die Bedingung wahr, wird die Komponente verwendet, um ihre Konfigurationsobjekte zu erstellen. Ist die Bedingung falsch, wird die Komponente übersprungen, und es werden keine Konfigurationsobjekte durch sie erstellt. Der boolesche Ausdruck basiert oft auf Parameterwerten.

Beispiel:

components:
      -
        name: servicegroup-comp
        type: ns::servicegroup
        condition: $parameters.svc-server-ips
        properties:
              name: $parameters.name + "-svcgrp"
              servicetype: HTTP
<!--NeedCopy-->

In diesem Beispiel, wenn der Benutzer einen Wert für den optionalen Parameter svc-server-ips angibt, wird die Komponente servicegroup-comp von der StyleBook-Engine verarbeitet. Ist die Bedingung falsch, d.h. wenn der Benutzer keinen Wert für diesen Parameter angibt, wird diesem Parameter ein Nullwert zugewiesen und als falsch ausgewertet. In diesem Fall ignoriert die StyleBook-Engine die Existenz dieser Komponente, und es wird keine Dienstgruppe erstellt.

Beachten Sie, dass der boolesche Ausdruck auf jedem gültigen Ausdruck basieren kann, der in StyleBooks unterstützt wird (z. B. ob eine andere Komponente vorhanden ist oder ob ein Parameter einen bestimmten Wert hat).

Das folgende Beispiel erstellt das Konfigurationsobjekt vom NITRO-Typ ns::systemfile, wenn die Bedingung als wahr ausgewertet wird.

Beispiel:

      components
         -
           name: pem_key_files
           type: ns::systemfile
           condition: "$components.der-certificate-files-comp or $components.pem-certificate-files-comp"
           properties:
                      filecontent: $certificate.keyfile.contents
                      fileencoding: "BASE64"
                      filelocation: "/nsconfig/ssl"
                      filename: $certificate.keyfile.filename
<!--NeedCopy-->

In diesem Beispiel ist die Bedingung ein komplexer „ODER“-Ausdruck, bei dem dieses Konfigurationsobjekt nur dann vom StyleBook erstellt werden soll, wenn zwei andere Komponenten im StyleBook verarbeitet (nicht übersprungen) wurden, wodurch eine Abhängigkeit zwischen Komponenten entsteht.

Bedingungskonstrukt