条件コンストラクト

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

      -

        name: servicegroup-comp

        type: ns::servicegroup

        condition: $parameters.svc-server-ips

        properties:

              name: $parameters.name + "-svcgrp"

              servicetype: HTTP
この例では、ユーザーがオプションパラメータ svc-server-ips の値を指定した場合、コンポーネント servicegroup-comp はStyleBookエンジンによって処理されます。条件がfalseの場合、つまりユーザーがこのパラメータに値を指定しない場合、null値がこのパラメータに割り当てられ、falseと評価されると、StyleBookエンジンはこのコンポーネントの存在を無視し、servicegroup は作成されません。
ブール式は、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
この例では、条件は複雑な「or」式であり、StyleBook内の他の2つのコンポーネントが処理され(スキップされず)、コンポーネント間に依存関係が作成された場合にのみ、この構成オブジェクトをStyleBookによって作成したいと考えています。