[openstack-dev] [Murano] ERROR murano.common.engine [-] yaql.language.exceptions.NoMatchingMethodException: No method "values" for receiver None matches supplied arguments

Stan Lagun slagun at mirantis.com
Mon Mar 6 23:22:13 UTC 2017


Greg,

based on the stack trace provided I see that it happened because the Heat
stack output had wrong value.

If you look at
https://github.com/openstack/murano/blob/stable/newton/meta/io.murano/Classes/resources/Instance.yaml#L178-L179

      - $netIdToIpsMap: $outputs.get(format('{0}-assigned-ips', $this.name))
      - $.ipAddresses: $netIdToIpsMap.values().flatten().distinct()  # <---
exception is thrown here

"No method "values" for receiver None..." means that $netIdToIpsMap is null
(None), which, in turn, means that
ether there in no output value with the name "$instanceName-assigned-ips"
or its value is null. In both cases it is not
something that can happen under normal conditions. Unfortunately I cannot
tell why it happened in your case.
I'd start with debugging of the Heat stack in attempt to find out why Heat
didn't set the output values

Regards,
Stan


On March 6, 2017 at 12:02:59 PM, Waines, Greg (greg.waines at windriver.com)
wrote:

We are attempting to integrate a NEWTON-version of MURANO integrated into
our OpenStack solution.



With a very simple murano package/app, that basically just does a “
$.instance.deploy() “ in its deploy method of its main class,

we are getting the following traceback error (see end of email).



Any thoughts / guidance on potential issues ?



( NOTE … we had been trying to run with the secondary rabbit server, but
now (temporarily) just pointing murano at the core rabbit server to get
past some issues with not having the secondary rabbit server running. )



thanks in advance,

Greg.





2017-03-06 19:28:08.904 184898 ERROR murano.common.engine [-]

  yaql.language.exceptions.NoMatchingMethodException: No method "values"
for receiver None matches supplied arguments

  Traceback (most recent call last):

    File
"/tmp/murano-packages-cache/io.murano/0.0.0/37e6dfe1415c4caa9150a53fc18506ef/Classes/Environment.yaml",
line 120:9 in method deploy of type io.murano.Environment

        $.applications.pselect($.deploy())

    File
"/tmp/murano-packages-cache/wrs.titanium.murano.examples.cgcs_guest/0.0.0/b7554a5f915748629da6e425005e1933/Classes/cgcs_guest.yaml",
line 41:13 in method deploy of type wrs.titanium.murano.examples.cgcs_guest

        $.instance.deploy()

    File
"/tmp/murano-packages-cache/io.murano/0.0.0/37e6dfe1415c4caa9150a53fc18506ef/Classes/resources/Instance.yaml",
line 194:9 in method deploy of type io.murano.resources.Instance

        $this.endDeploy()

    File
"/tmp/murano-packages-cache/io.murano/0.0.0/37e6dfe1415c4caa9150a53fc18506ef/Classes/resources/Instance.yaml",
line 179:24 in method endDeploy of type io.murano.resources.Instance

        $netIdToIpsMap.values().flatten().distinct()

    File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line 53
in method evaluate

        return value(context)

    File "/usr/lib/python2.7/site-packages/murano/dsl/yaql_expression.py",
line 85 in method __call__

        return self._parsed_expression.evaluate(context=context)

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 165 in method evaluate

        return self(utils.NO_VALUE, context, self.engine)

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 156 in method __call__

        return super(Statement, self).__call__(receiver, context, engine)

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 37 in method __call__

        return context(self.name, engine, receiver, context)(*self.args)

    File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line
65 in method <lambda>

        data_context, use_convention, function_filter)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
49 in method call

        name, all_overloads, engine, receiver, data_context, args, kwargs)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
117 in method choose_overload

        args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
117 in method <genexpr>

        args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
113 in method <lambda>

        and not isinstance(arg, expressions.Constant))

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 37 in method __call__

        return context(self.name, engine, receiver, context)(*self.args)

    File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line
65 in method <lambda>

        data_context, use_convention, function_filter)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
49 in method call

        name, all_overloads, engine, receiver, data_context, args, kwargs)



    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
117 in method choose_overload

        args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
117 in method <genexpr>

        args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
113 in method <lambda>

        and not isinstance(arg, expressions.Constant))

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 37 in method __call__

        return context(self.name, engine, receiver, context)(*self.args)

    File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line
65 in method <lambda>

        data_context, use_convention, function_filter)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
49 in method call

        name, all_overloads, engine, receiver, data_context, args, kwargs)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
117 in method choose_overload

        args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
117 in method <genexpr>

        args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
113 in method <lambda>

        and not isinstance(arg, expressions.Constant))

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 37 in method __call__

        return context(self.name, engine, receiver, context)(*self.args)

    File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line
65 in method <lambda>

        data_context, use_convention, function_filter)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
51 in method call

        result = delegate()

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
142 in method <lambda>

        return lambda: delegate()

    File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line
341 in method func

        six.iteritems(keyword_args)))

    File
"/usr/lib/python2.7/site-packages/yaql/standard_library/system.py", line 34
in method op_dot

        return expr(receiver)

    File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py",
line 269 in method func

        engine, args, kwargs)

    File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py",
line 236 in method _call

        result = value(receiver, context, engine)

    File "/usr/lib/python2.7/site-packages/yaql/language/expressions.py",
line 37 in method __call__

        return context(self.name, engine, receiver, context)(*self.args)

    File "/usr/lib/python2.7/site-packages/yaql/language/contexts.py", line
65 in method <lambda>

        data_context, use_convention, function_filter)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
49 in method call

        name, all_overloads, engine, receiver, data_context, args, kwargs)

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
108 in method choose_overload

        raise_not_found()

    File "/usr/lib/python2.7/site-packages/yaql/language/runner.py", line
72 in method raise_not_found

        raise exceptions.NoMatchingMethodException(name, receiver)






__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20170306/9d4eb226/attachment.html>


More information about the OpenStack-dev mailing list