Deployments with Nova Network fail in joinInstance method

Bug #1710576 reported by Victor Araujo
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Murano
Fix Released
Undecided
Victor Araujo

Bug Description

Bug Description:

When using Nova Network as the driver for Murano, deployments fail with error [yaql.language.exceptions.NoMatchingMethodException]: No method "joinInstance" for receiver <io.murano.resources.NovaNetwork/0.0.0 39ac362e04844b24a314d903127ad143 (139992452798544)> matches supplied arguments.

Commit 103f67815a1cb2c514241fbf2e897684b5a269ae added a securityGroups parameter to the joinInstance method in meta/io.murano/Classes/resources/NeutronNetwork.yaml, but not in meta/io.murano/Classes/resources/NovaNetwork.yaml

Steps to reproduce:
1. Set driver=nova in Murano's configuration file.
2. Try to deploy an application in an environment

Additional information:

Log from murano-engine

Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: yaql.language.exceptions.NoMatchingMethodException: No method "joinInstance" for receiver <io.murano.resources.NovaNetwork/0.0.0 39ac362e04844b24a314d9
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: Traceback (most recent call last):
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano/0.0.0/338e3799163e441c985f548eac3c3de3/Classes/Environment.yaml", line 120:9 in method deploy of type io.m
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $.applications.pselect($.deploy())
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano.applications/0.0.0/b895bd7bb64a459cb561756fa9adf453/Classes/baseapps.yaml", line 56:9 in method deploy of
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $this.deployAt($this.servers)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano.applications/0.0.0/b895bd7bb64a459cb561756fa9adf453/Classes/component.yaml", line 402:9 in method deployAt
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $serverGroup.deploy()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano.applications/0.0.0/b895bd7bb64a459cb561756fa9adf453/Classes/servers.yaml", line 162:9 in method deploy of
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $this.deployServers($this, $this.items)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano.applications/0.0.0/b895bd7bb64a459cb561756fa9adf453/Classes/servers.yaml", line 41:9 in method deployServe
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $servers.select($this._deployServer($, $environment, $serverGroup))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano.applications/0.0.0/b895bd7bb64a459cb561756fa9adf453/Classes/servers.yaml", line 67:9 in method _deployServ
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $server.beginDeploy()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano/0.0.0/338e3799163e441c985f548eac3c3de3/Classes/resources/Instance.yaml", line 141:11 in method beginDeploy
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $.joinNet($region.defaultNetworks.environment, $securityGroupName, $this.securityGroups)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/tmp/murano-packages-cache/io.murano/0.0.0/338e3799163e441c985f548eac3c3de3/Classes/resources/Instance.yaml", line 266:22 in method joinNet of
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: $net.joinInstance( instance => $this, securityGroupName => $securityGroupName, securityGroups => $securityGroups, assignFloatingIp => $assignFip,
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/helpers.py", line 55 in method evaluate
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return value(context)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/yaql_expression.py", line 85 in method __call__
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return self._parsed_expression.evaluate(context=context)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/expressions.py", line 168 in method evaluate
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return self(utils.NO_VALUE, context, self.engine)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/expressions.py", line 156 in method __call__
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return super(Statement, self).__call__(receiver, context, engine)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/expressions.py", line 37 in method __call__
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return context(self.name, engine, receiver, context)(*self.args)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/contexts.py", line 65 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: data_context, use_convention, function_filter)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 49 in method call
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: name, all_overloads, engine, receiver, data_context, args, kwargs)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 117 in method choose_overload
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 117 in method <genexpr>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: args = tuple(arg_evaluator(i, arg) for i, arg in enumerate(args))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 113 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: and not isinstance(arg, expressions.Constant))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/expressions.py", line 37 in method __call__
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return context(self.name, engine, receiver, context)(*self.args)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/contexts.py", line 65 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: data_context, use_convention, function_filter)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 51 in method call
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: result = delegate()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 142 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return lambda: delegate()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/specs.py", line 346 in method func
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: six.iteritems(keyword_args)))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/yaql_functions.py", line 188 in method op_dot
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return operator(ctx2, receiver, expr)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/yaqltypes.py", line 349 in method func
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: new_name, engine, new_receiver, new_context)(*args, **kwargs)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/contexts.py", line 65 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: data_context, use_convention, function_filter)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 51 in method call
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: result = delegate()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 142 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return lambda: delegate()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/specs.py", line 346 in method func
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: six.iteritems(keyword_args)))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/standard_library/system.py", line 63 in method op_dot
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return expr(receiver)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/yaqltypes.py", line 293 in method func
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: engine, args, kwargs)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/yaqltypes.py", line 260 in method _call
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: result = value(receiver, context, engine)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/expressions.py", line 37 in method __call__
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return context(self.name, engine, receiver, context)(*self.args)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/contexts.py", line 65 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: data_context, use_convention, function_filter)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 51 in method call
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: result = delegate()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/runner.py", line 142 in method <lambda>
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return lambda: delegate()
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/usr/local/lib/python2.7/dist-packages/yaql/language/specs.py", line 346 in method func
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: six.iteritems(keyword_args)))
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/yaql_integration.py", line 298 in method payload
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: return murano_method.invoke(__receiver, args, kwargs, __context, True)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/murano_method.py", line 230 in method invoke
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: self, this, context, args, kwargs, skip_stub)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/executor.py", line 118 in method invoke_method
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: method.arguments_scheme, args, kwargs, method.name, this)
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: File "/opt/stack/murano/murano/dsl/executor.py", line 304 in method _canonize_parameters
Aug 14 07:42:57 ubuntu-murano murano-engine[3204]: method_name, receiver): MuranoPlException: [yaql.language.exceptions.NoMatchingMethodException]: No method "joinInstance" for receiver <io.murano

Victor Araujo (vears91)
Changed in murano:
assignee: nobody → Victor Araujo (vears91)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to murano (master)

Fix proposed to branch: master
Review: https://review.openstack.org/493497

Changed in murano:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to murano (master)

Reviewed: https://review.openstack.org/493497
Committed: https://git.openstack.org/cgit/openstack/murano/commit/?id=075f5777d9db7fd90f6c897e386753ac1e1ec858
Submitter: Jenkins
Branch: master

commit 075f5777d9db7fd90f6c897e386753ac1e1ec858
Author: Victor Araujo <email address hidden>
Date: Mon Aug 14 11:21:07 2017 +0200

    Add securityGroups param to NovaNetwork joinInstance method in Core Library

    Commit 103f67815a1cb2c514241fbf2e897684b5a269ae added a securityGroups
    parameter to the joinInstance method in meta/io.murano/Classes/resources/
    Instance.yaml, but not in meta/io.murano/Classes/resources/
    NovaNetwork.yaml. This omission makes deployments with Nova Network as a
    driver fail. This commit adds the securityGroups parameter to
    NovaNetwork.yaml.

    Change-Id: If814d48d6491f1e16a5fb2b8632723224071d575
    Closes-Bug: #1710576

Changed in murano:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to murano (stable/pike)

Fix proposed to branch: stable/pike
Review: https://review.openstack.org/496525

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to murano (stable/pike)

Reviewed: https://review.openstack.org/496525
Committed: https://git.openstack.org/cgit/openstack/murano/commit/?id=ecaf6ef3cdeee45f20fd50d69a53fe16717ce219
Submitter: Jenkins
Branch: stable/pike

commit ecaf6ef3cdeee45f20fd50d69a53fe16717ce219
Author: Victor Araujo <email address hidden>
Date: Mon Aug 14 11:21:07 2017 +0200

    Add securityGroups param to NovaNetwork joinInstance method in Core Library

    Commit 103f67815a1cb2c514241fbf2e897684b5a269ae added a securityGroups
    parameter to the joinInstance method in meta/io.murano/Classes/resources/
    Instance.yaml, but not in meta/io.murano/Classes/resources/
    NovaNetwork.yaml. This omission makes deployments with Nova Network as a
    driver fail. This commit adds the securityGroups parameter to
    NovaNetwork.yaml.

    Change-Id: If814d48d6491f1e16a5fb2b8632723224071d575
    Closes-Bug: #1710576
    (cherry picked from commit 075f5777d9db7fd90f6c897e386753ac1e1ec858)

tags: added: in-stable-pike
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/murano 5.0.0.0b1

This issue was fixed in the openstack/murano 5.0.0.0b1 development milestone.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.