条件コンストラクト

最終公開日 : 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エンジンはこのコンポーネントの存在を無視し、サービスグループは作成されません。
ブール式は、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によって作成したいと考えています。そのため、コンポーネント間に依存関係が作成されます。