親参照

最終公開日 : Sep 25, 2026
ネストされたコンポーネントを使用している場合、$parent表記を使用して親コンポーネントを参照できます。親コンポーネントがrepeatコンストラクトを使用して複数の構成オブジェクトを構築し、各イテレーション内で子コンポーネントが他の構成オブジェクトを構築する場合、$parent表記は常に親コンポーネントの現在のイテレーションを参照します。例えば、$parent.properties.nameは、親によって現在のイテレーションで構築された構成オブジェクトのnameプロパティを参照します。
例:
components:

 -

   name: my-lbvserver-comp

   type: ns::lbvserver

   properties:

     name: $parameters.name + "-lb"

     servicetype: HTTP

     ipv46: $parameters.ip

     port: 80

     lbmethod: $parameters.lb-alg

     components:

       -

         name: my-svcg-comp

         type: ns::servicegroup

         properties:

           name: $parameters.name + "-svcgrp"

           servicetype: HTTP

           components:

            -

              name: lbvserver-svg-binding-comp

              type: ns::lbvserver_servicegroup_binding

              properties:

                 name: $parent.parent.properties.name

                 servicegroupname: $parent.properties.name

                   -

                     name: members-svcg-comp

                     type: ns::servicegroup_servicegroupmember_binding

                     repeat: $parameters.svc-servers

                     repeat-item: srv

                     properties:

                       ip: $srv

                       port: str($parameters.svc-port)

                       servicegroupname: $parent.properties.name
コンポーネントの階層を上方向に移動することもできます。最上位コンポーネントに至るまで、親の親のプロパティにアクセスすることで可能です。例えば、コンポーネントlbvserver-svg-binding-compのプロパティ名は、$parent.parent表記を使用することで、その親の親であるmy-lbvserver-compコンポーネントのプロパティ名から値を取得します。
Related information