There is a bug here, but it has nothing to do with SELF.

The issue is that you are using an "ad hoc", typeless input here for the
"configure" operation. Because it's typeless, ARIA sends it "as is" and
thus has no idea that what's inside might be a syntactical intrinsic
function.

I will open a big for this, but for now the workaround is to explicitly
declare the input at the type, which I think is generally a good idea. (And
actually, I would rather ARIA not allow the current typeless input
situation.)

Here's how it would look:

tosca_definitions_version: tosca_simple_yaml_1_0

data_types:

  Payload:
    properties:
      config:
        type: string

node_types:

  my_Node_Server:
    derived_from: tosca.nodes.Root
    attributes:
      vmme_configuration:
        type: string
        default: test default value
    interfaces:
      Standard:
        type: tosca.interfaces.node.lifecycle.Standard
        create:
          implementation: sample.sample_test.call_test
          inputs: {}
        configure:
          implementation: sample.sample_test.call_name
          inputs:
            payload:
              type: Payload

topology_template:

   node_templates:
     v_mme:
       type: my_Node_Server
       interfaces:
         Standard:
           configure:
             inputs:
               payload:
                 config: {get_attribute: [ SELF, vmme_configuration ]}
               config: {get_attribute: [ SELF, vmme_configuration ]}





On Tue, Dec 5, 2017 at 10:58 AM, Vaishali Krishnamurthy <
[email protected]> wrote:

> Here, I have used the get_attribute in the input defined in the second
> level, for which it returns me the dictionary object.
> inputs:
>       payload: {
>             "config": {get_attribute: [ SELF, vmme_configuration ]}}
>
> When I use the get_attribute in inputs defined in the first level it
> returns
> me none.
> inputs:
>        config: {get_attribute: [ SELF, vmme_configuration ]}
>
> Please find the service template below.
> node_types:
>   my_Node_Server:
>     derived_from: tosca.nodes.Root
>     attributes:
>       vmme_configuration:
>         type: string
>     interfaces:
>       Standard:
>         create:
>           implementation: sample > sample.sample_test.call_test
>           inputs: {}
>         configure:
>           implementation: sample > sample.sample_test.call_name
>           inputs: {}
>
> topology_template:
>
>    node_templates:
>      v_mme:
>        type: my_Node_Server
>        interfaces:
>          Standard:
>            configure:
>              inputs:
>                payload: {
>                  "config": {get_attribute: [ SELF, vmme_configuration ]}}
>                config: {get_attribute: [ SELF, vmme_configuration ]}
>
> Regards,
> Vaishali.
>
> -----Original Message-----
> From: Tal Liron [mailto:[email protected]]
> Sent: Tuesday, December 05, 2017 2:06 PM
> To: [email protected]
> Subject: Re: get_attribute function not supporting SELF as
> <modelable_entity_name>
>
> Thanks for the report. Do you possibly have a minimal TOSCA template we can
> use to reproduce the error?
>
> On Tue, Dec 5, 2017 at 8:29 AM, Vaishali Krishnamurthy <
> [email protected]> wrote:
>
> > Hi,
> >
> > We have observed the attribute resolution is not proper when we use
> > SELF as <modelable_entity_name> in  get_attribute function and it
> > works fine when we use the node name as <modelable_entity_name> .
> > With SELF it takes the default value. Could you confirm if there is any
> > fix for this issue ?
> >
> >
> > Regards,
> >
> > Vaishali
> >
>

Reply via email to