Application Delivery Management

条件コンストラクト

条件コンストラクトを使用すると、コンポーネントを条件付きにできます。条件コンストラクトの値は、trueまたはfalseに評価されるブール式です。条件がtrueの場合、コンポーネントはその構成オブジェクトを構築するために使用されます。条件がfalseの場合、コンポーネントはスキップされ、それを通じて構成オブジェクトは作成されません。ブール式は、多くの場合、パラメーター値に基づいています。

:

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

この例では、ユーザーがオプションのパラメーター svc-server-ips に値を指定した場合、コンポーネント servicegroup-comp はStyleBookエンジンによって処理されます。条件がfalseの場合、つまりユーザーがこのパラメーターに値を提供しない場合、null値がこのパラメーターに割り当てられ、falseと評価されるため、StyleBookエンジンはこのコンポーネントの存在を無視し、サービスグループは作成されません。

ブール式は、StyleBookでサポートされている任意の有効な式(たとえば、別のコンポーネントが存在するかどうか、またはパラメーターが特定の値を持つかどうかなど)に基づくことができることに注意してください。

次の例では、条件がtrueに評価された場合、NITROタイプ ns::systemfile の構成オブジェクトを構築します。

:

     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-->

この例では、条件は複雑な「OR」式であり、StyleBook内の他の2つのコンポーネントが処理され(スキップされず)、コンポーネント間の依存関係が作成された場合にのみ、この構成オブジェクトをStyleBookによって作成したいと考えています。

条件コンストラクト