[openstack-dev] [Murano] Errors on $.instance.deploy() ... WHEN RUNNING WITHOUT MURANO-AGENT RABBIT

Stan Lagun slagun at mirantis.com
Fri Mar 3 21:16:33 UTC 2017


Greg,

you're right in everything you said.

This was fixed in master in https://review.openstack.org/#/c/387993/ with
intent to fix tests and unblock the gate. But since those tests were
introduced in Ocata the fix was not backported to Newton.
So I've just did a partial packport of the root cause fix. Here it is:
https://review.openstack.org/#/c/441477/


Sincerely yours,
Stan Lagun
Principal Software Engineer @ Mirantis

<slagun at mirantis.com>

On Fri, Mar 3, 2017 at 11:49 AM, Waines, Greg <Greg.Waines at windriver.com>
wrote:

> Looking for guidance on fixing the following error (end of email) that we
> are seeing when ‘deploying’ a very simple murano package/app on a Murano
> deployment WITHOUT the second rabbit server for murano-agent.
>
>
>
> So we have a NEWTON-version of MURANO integrated into our OpenStack
> solution.
>
>
>
> We have modified murano.conf:
>
>>
>      # Disallow the use of murano-agent (boolean value)
>
>      disable_murano_agent = true
>
>>
>
>
> We are NOT even running the second rabbit server for communication with
> murano-agent.
>
>
>
> With a very simple murano package/app, that basically just does a “
> $.instance.deploy() “ in its deploy method of its main class.
>
> *( NOTE:  I have tested this murano package/app on other Murano setups and
> it works … although those Murano setups had murano-agent and second rabbit
> enabled. )*
>
>
>
> And we get the following traceback error (see end of email).
>
>
>
> Questions:
>
>     - I believe this is a valid configuration
>
>     - but does anyone actually run Murano in this type of setup ?   I am
> guessing not many … so is this an upstream murano bug that I am seeing ? …
> that nobody else sees because basically no one runs in this mode ?
>
>
>
>     - if this should work, and works in other setups,
>
>       … any guidance on how to resolve / debug what is going on here ?
>
>
>
>
>
> Thanks in advance,
>
> Greg.
>
>
>
>
>
>
>
> 2017-03-03 17:46:35.175 12568 ERROR murano.common.engine [-]
>
>   AttributeError: 'AgentListener' object has no attribute '_results_queue'
>
>   Traceback (most recent call last):
>
>     File "/tmp/murano-packages-cache/io.murano/0.0.0/
> 3317e706ecd1417bb748361a6a3385d2/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.
> VmFip_NoAppDeploy/0.0.0/829a861c408a4516b0589d04cce232
> 48/Classes/VmFip_NoAppDeploy.yaml", line 41:13 in method deploy of type
> wrs.titanium.murano.examples.VmFip_NoAppDeploy
>
>         $.instance.deploy()
>
>     File "/tmp/murano-packages-cache/io.murano/0.0.0/
> 3317e706ecd1417bb748361a6a3385d2/Classes/resources/Instance.yaml", line
> 193:9 in method deploy of type io.murano.resources.Instance
>
>         $this.beginDeploy()
>
>     File "/tmp/murano-packages-cache/io.murano/0.0.0/
> 3317e706ecd1417bb748361a6a3385d2/Classes/resources/Instance.yaml", line
> 131:28 in method beginDeploy of type io.murano.resources.Instance
>
>         $.prepareUserData()
>
>     File "/tmp/murano-packages-cache/io.murano/0.0.0/
> 3317e706ecd1417bb748361a6a3385d2/Classes/resources/LinuxMuranoInstance.yaml",
> line 14:19 in method prepareUserData of type io.murano.resources.
> LinuxMuranoInstance
>
>         $.generateUserData()
>
>     File "/tmp/murano-packages-cache/io.murano/0.0.0/
> 3317e706ecd1417bb748361a6a3385d2/Classes/resources/LinuxMuranoInstance.yaml",
> line 81:31 in method generateUserData of type io.murano.resources.
> LinuxMuranoInstance
>
>         $region.agentListener.queueName()
>
>     File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line
> 58 in method evaluate
>
>         for d_key, d_value in six.iteritems(value))
>
>     File "/usr/lib/python2.7/site-packages/yaql/language/utils.py", line
> 122 in method __init__
>
>         self._d = dict(*args, **kwargs)
>
>     File "/usr/lib/python2.7/site-packages/murano/dsl/helpers.py", line
> 58 in method <genexpr>
>
>         for d_key, d_value in six.iteritems(value))
>
>     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
> 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/murano/dsl/yaql_functions.py",
> line 183 in method op_dot
>
>         return operator(ctx2, receiver, expr)
>
>     File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py",
> line 323 in method func
>
>         new_name, engine, new_receiver, new_context)(*args, **kwargs)
>
>     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/murano/dsl/yaql_functions.py",
> line 183 in method op_dot
>
>         return operator(ctx2, receiver, expr)
>
>     File "/usr/lib/python2.7/site-packages/yaql/language/yaqltypes.py",
> line 323 in method func
>
>         new_name, engine, new_receiver, new_context)(*args, **kwargs)
>
>     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
> 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/murano/dsl/yaql_integration.py",
> line 246 in method payload
>
>         __receiver, args, kwargs, __context, True), __context)
>
>     File "/usr/lib/python2.7/site-packages/murano/dsl/murano_method.py",
> line 230 in method invoke
>
>         self, this, context, args, kwargs, skip_stub)
>
>     File "/usr/lib/python2.7/site-packages/murano/dsl/executor.py", line
> 163 in method invoke_method
>
>         result = call()
>
>     File "/usr/lib/python2.7/site-packages/murano/dsl/executor.py", line
> 153 in method call
>
>         yaql_engine, context, native_this)(*args, **kwargs)
>
>     File "/usr/lib/python2.7/site-packages/yaql/language/specs.py", line
> 60 in method func
>
>         return self.get_delegate(receiver, engine, context, args, kwargs)()
>
>     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/murano/dsl/yaql_integration.py",
> line 192 in method payload
>
>         return body(__self.extension, *args, **kwargs)
>
>     File "/usr/lib/python2.7/site-packages/murano/engine/system/agent_listener.py",
> line 58 in method queue_name
>
>         return self._results_queue
>
>
>
>
>
> __________________________________________________________________________
> 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/20170303/905b2b6c/attachment.html>


More information about the OpenStack-dev mailing list