Murano generated heat template does not pass the validation of heat stack

Bug #1817538 reported by Shi Yan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Murano
In Progress
Undecided
Shi Yan

Bug Description

When using Queens Murano with Rocky release Heat, application deployment is failed at the stage of server creation validation.

2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource Traceback (most recent call last):
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 924, in _action_recorder
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource yield
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 1032, in _do_action
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource yield self.action_handler_task(action, args=handler_args)
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/heat/engine/scheduler.py", line 329, in wrapper
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource step = next(subtask)
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 977, in action_handler_task
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource handler_data = handler(*args)
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/heat/engine/resources/openstack/nova/server.py", line 836, in handle_create
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource nics = self._build_nics(self.properties[self.NETWORKS],
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/novaclient/v2/servers.py", line 1276, in create
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource self._validate_create_nics(nics)
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource File "/usr/lib/python2.7/dist-packages/novaclient/v2/servers.py", line 1186, in _validate_create_nics
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource raise ValueError('nics are required after microversion 2.36')
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource ValueError: nics are required after microversion 2.36
2019-02-25 12:47:09.557 25037 ERROR heat.engine.resource

It's working with Queens Heat but not working with Rocky heat is because of such heat change: https://github.com/openstack/heat/commit/3c06347a93343850409a243b3c7e1f11eeb4db3f

And looks the template pushed from Murano does not contain network parameters, so the stack creation failed. The template from Murano is like:

      "xhzabjsjol8sv1":{
         "type":"OS::Nova::Server",
         "properties":{
            "user_data_format":"RAW",
            "name":"xhzabjsjol8sv1",
            "availability_zone":"xxxxxxx",
            "key_name":"yyyyyy",
            "image":"f5f0d4f1-5b80-4c0b-a274-41c299d28e2a",
            "user_data":{
               "get_resource":"user_data-xhzabjsjol8sv1"
            },
            "flavor":"m1.small",
            "security_groups":[
               {
                  "get_resource":"73323562b6534aee8e31307e7228ab3e"
               }
            ],
            "metadata":{
            }
         }

Maybe I have some misunderstanding here but wonder if we need a fix in murano? or heat?

Shi Yan (yanshi-403)
Changed in murano:
status: New → Invalid
Revision history for this message
Shi Yan (yanshi-403) wrote :

Dig a bit murano code, and still think Murano should fix this.

In murano core library, the "networks" property is actually not passed into heat template. As below:

      - $properties:
          name: $.name
          flavor: $.flavor
          availability_zone: $.availabilityZone
          user_data: $preparedUserData.data
          user_data_format: $preparedUserData.format
          key_name: $.keyname
          metadata: $this.getMetadata($region)

Changed in murano:
status: Invalid → New
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/639626

Changed in murano:
assignee: nobody → Shi Yan (yanshi-403)
status: New → In Progress
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers