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によって作成されるようにします。これにより、コンポーネント間の依存関係が作成されます。

条件コンストラクト

この記事の概要