Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

ERROR: 'unicode' object has no attribute 'get' Heat

Dear all am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error but stack created with demo template without any issue


ERROR: 'unicode' object has no attribute 'get'

heat_template_version: 2017-02-24 description: HOT Templates for SALIM lab cloud

parameters: my_key: type: string label: my-prv description: Key name for salim lab enviorment win_image: type: string label: 2012 server description: Windows image centos_image: type: string label: centos 7 x86 description: centos 7 linux images flavor_40G: type: string label: flavor-40G default: flavor-40G flavor_80G: type: string label: flavor-80G default: flavor-80G description: ORACLE and TOMCAT Server Flavour pub_net: type: string label: oracle and tomcat description: public network name

resources: private_net: type: OS::Neutron::Net properties: name: LAB-PRV-NET1 private_subnet: type: OS::Neutron::Subnet properties: network_id: { get_resource: private_net } cidr: 192.168.9.0/24 gateway_ip: 192.168.9.1 LAB_ROUTER1: type: OS::Neutron::Router properties: external_gateway_info: { get_param: pub_net } LAB_ROUTER1_INT: type: OS::Neutron::RouterInterface properties: router_id: { get_resource: LAB_ROUTER1 } subnet_id: { get_resource: private_subnet } TOM1_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } TOM2_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } WIN_AD_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } TOM1_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net } port_id: { get_resource: TOM1_Port1 } TOM2_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net} port_id: { get_resource: TOM2_Port1 } WIN_AD_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net } port_id: { get_resource: WIN_AD_Port1 } TOM1_SERVER1: type: OS::Nova::Server properties: name: APP2 image: { get_param: centos_image } flavor: { get_param: flavor_40G } networks: - port: { get_resource: tom1_Port1} TOM2_SERVER1: type: OS::Nova::Server properties: name: APP1 image: { get_param: centos_image } flavor: {get_param: flavor-40G } networks: - port: {get_resource: TOM2_Port1 }

WIN-AD1: type: OS::Nova::Server properties: name: win-AD image: { get_param: win_image } flavor: { get_param: flavor-40G } networks: - port: {get_resource: WIN_AD_Port1 }

outputs: TOM1_PRV_IP: description: Private ip For TOM1 Server value: { get_attr: [TOM1_SERVER1, first_address] } TOM2_PRV_IP: description: Private ip FOR tom2 Server value: { get_attr: [TOM2_SERVER1, first_address] } WIN-AD_prv_IP: description: Private iP FOR WIN AD Server value: { get_attr: [WIN-AD1, first_address] }

TOM2_PUB_IP: description: Public ip for APP value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

TOM1_PUB_IP: description: Public IP FOR DAS-SERVER value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

WIN_AD_PUB_IP: description: Public ip for WIN Server value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }


ERROR: 'unicode' object has no attribute 'get' Heat

Dear all am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error but stack created with demo template without any issue


ERROR: 'unicode' object has no attribute 'get'

heat_template_version: 2017-02-24 description: HOT Templates for SALIM lab cloud

parameters: my_key: type: string label: my-prv description: Key name for salim lab enviorment win_image: type: string label: 2012 server description: Windows image centos_image: type: string label: centos 7 x86 description: centos 7 linux images flavor_40G: type: string label: flavor-40G default: flavor-40G flavor_80G: type: string label: flavor-80G default: flavor-80G description: ORACLE and TOMCAT Server Flavour pub_net: type: string label: oracle and tomcat description: public network name

resources: private_net: type: OS::Neutron::Net properties: name: LAB-PRV-NET1 private_subnet: type: OS::Neutron::Subnet properties: network_id: { get_resource: private_net } cidr: 192.168.9.0/24 gateway_ip: 192.168.9.1 LAB_ROUTER1: type: OS::Neutron::Router properties: external_gateway_info: { get_param: pub_net } LAB_ROUTER1_INT: type: OS::Neutron::RouterInterface properties: router_id: { get_resource: LAB_ROUTER1 } subnet_id: { get_resource: private_subnet } TOM1_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } TOM2_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } WIN_AD_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } TOM1_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net } port_id: { get_resource: TOM1_Port1 } TOM2_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net} port_id: { get_resource: TOM2_Port1 } WIN_AD_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net } port_id: { get_resource: WIN_AD_Port1 } TOM1_SERVER1: type: OS::Nova::Server properties: name: APP2 image: { get_param: centos_image } flavor: { get_param: flavor_40G } networks: - port: { get_resource: tom1_Port1} TOM2_SERVER1: type: OS::Nova::Server properties: name: APP1 image: { get_param: centos_image } flavor: {get_param: flavor-40G } networks: - port: {get_resource: TOM2_Port1 }

WIN-AD1: type: OS::Nova::Server properties: name: win-AD image: { get_param: win_image } flavor: { get_param: flavor-40G } networks: - port: {get_resource: WIN_AD_Port1 }

outputs: TOM1_PRV_IP: description: Private ip For TOM1 Server value: { get_attr: [TOM1_SERVER1, first_address] } TOM2_PRV_IP: description: Private ip FOR tom2 Server value: { get_attr: [TOM2_SERVER1, first_address] } WIN-AD_prv_IP: description: Private iP FOR WIN AD Server value: { get_attr: [WIN-AD1, first_address] }

TOM2_PUB_IP: description: Public ip for APP value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

TOM1_PUB_IP: description: Public IP FOR DAS-SERVER TOM1-SERVER value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

WIN_AD_PUB_IP: description: Public ip for WIN Server value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }


ERROR: 'unicode' object has no attribute 'get' Heat

Dear all am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error but stack created with demo template without any issue


ERROR: 'unicode' object has no attribute 'get'

'get' heat_template_version: 2017-02-24 description: HOT Templates for SALIM lab cloud

parameters: my_key: type: string label: my-prv description: Key name for salim lab enviorment win_image: type: string label: 2012 server description: Windows image centos_image: type: string label: centos 7 x86 description: centos 7 linux images flavor_40G: type: string label: flavor-40G default: flavor-40G flavor_80G: type: string label: flavor-80G default: flavor-80G description: ORACLE and TOMCAT Server Flavour pub_net: type: string label: oracle and tomcat description: public network name

name resources: private_net: type: OS::Neutron::Net properties: name: LAB-PRV-NET1 private_subnet: type: OS::Neutron::Subnet properties: network_id: { get_resource: private_net } cidr: 192.168.9.0/24 gateway_ip: 192.168.9.1 LAB_ROUTER1: type: OS::Neutron::Router properties: external_gateway_info: { get_param: pub_net } LAB_ROUTER1_INT: type: OS::Neutron::RouterInterface properties: router_id: { get_resource: LAB_ROUTER1 } subnet_id: { get_resource: private_subnet } TOM1_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } TOM2_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } WIN_AD_Port1: type: OS::Neutron::Port properties: network_id: { get_resource: private_net } fixed_ips: - subnet_id: { get_resource: private_subnet } TOM1_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net } port_id: { get_resource: TOM1_Port1 } TOM2_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net} port_id: { get_resource: TOM2_Port1 } WIN_AD_FL_IP: type: OS::Neutron::FloatingIP properties: floating_network_id: { get_param: pub_net } port_id: { get_resource: WIN_AD_Port1 } TOM1_SERVER1: type: OS::Nova::Server properties: name: APP2 image: { get_param: centos_image } flavor: { get_param: flavor_40G } networks: - port: { get_resource: tom1_Port1} TOM2_SERVER1: type: OS::Nova::Server properties: name: APP1 image: { get_param: centos_image } flavor: {get_param: flavor-40G } networks: - port: {get_resource: TOM2_Port1 }

} WIN-AD1: type: OS::Nova::Server properties: name: win-AD image: { get_param: win_image } flavor: { get_param: flavor-40G } networks: - port: {get_resource: WIN_AD_Port1 }

} outputs: TOM1_PRV_IP: description: Private ip For TOM1 Server value: { get_attr: [TOM1_SERVER1, first_address] } TOM2_PRV_IP: description: Private ip FOR tom2 Server value: { get_attr: [TOM2_SERVER1, first_address] } WIN-AD_prv_IP: description: Private iP FOR WIN AD Server value: { get_attr: [WIN-AD1, first_address] }

} TOM2_PUB_IP: description: Public ip for APP value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

} TOM1_PUB_IP: description: Public IP FOR TOM1-SERVER value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

} WIN_AD_PUB_IP: description: Public ip for WIN Server value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }

}

ERROR: 'unicode' object has no attribute 'get' Heat

Dear all

am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error but stack created with demo template without any issue

kindly advise me about this situation


ERROR: 'unicode' object has no attribute 'get'

heat_template_version: 2017-02-24
description: HOT Templates for SALIM lab cloud 

parameters:
  my_key:
    type: string
    label: my-prv
    description: Key name for salim lab enviorment
  win_image:
    type: string
    label: 2012 server
    description: Windows image 
  centos_image:
    type: string
    label: centos 7 x86
    description: centos 7 linux images
  flavor_40G:
    type: string
    label: flavor-40G
    default: flavor-40G
  flavor_80G:
    type: string
    label: flavor-80G
    default: flavor-80G
    description: ORACLE and TOMCAT Server Flavour
  pub_net:
    type: string
    label: oracle and tomcat 
    description: public network name

resources:
  private_net:
    type: OS::Neutron::Net
    properties:
      name: LAB-PRV-NET1
  private_subnet:
    type: OS::Neutron::Subnet
    properties:
      network_id: { get_resource: private_net }
      cidr: 192.168.9.0/24
      gateway_ip: 192.168.9.1
  LAB_ROUTER1:
    type: OS::Neutron::Router
    properties:
      external_gateway_info: { get_param: pub_net }
  LAB_ROUTER1_INT:
    type: OS::Neutron::RouterInterface
    properties:
      router_id: { get_resource:  LAB_ROUTER1 }
      subnet_id: { get_resource: private_subnet }
  TOM1_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM2_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  WIN_AD_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM1_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: TOM1_Port1 }
  TOM2_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net}
      port_id: { get_resource: TOM2_Port1 }
  WIN_AD_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: WIN_AD_Port1 }
  TOM1_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP2
      image: { get_param: centos_image }
      flavor: { get_param: flavor_40G }
      networks:
       - port: { get_resource: tom1_Port1}
  TOM2_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP1
      image: { get_param: centos_image }
      flavor: {get_param: flavor-40G }
      networks:
        - port: {get_resource: TOM2_Port1 }

  WIN-AD1:
    type: OS::Nova::Server
    properties:
      name:   win-AD
      image: { get_param: win_image }
      flavor: { get_param: flavor-40G }
      networks:
        - port: {get_resource: WIN_AD_Port1 }

outputs:
  TOM1_PRV_IP:
    description: Private ip For TOM1 Server
    value: { get_attr: [TOM1_SERVER1, first_address] }
  TOM2_PRV_IP:
    description: Private ip FOR tom2 Server
    value: { get_attr: [TOM2_SERVER1, first_address] }
  WIN-AD_prv_IP:
    description: Private iP FOR WIN AD Server
    value: { get_attr: [WIN-AD1, first_address] }

  TOM2_PUB_IP:
    description: Public ip for APP
    value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

  TOM1_PUB_IP:
    description: Public IP FOR TOM1-SERVER
    value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

  WIN_AD_PUB_IP:
    description: Public ip for WIN Server
    value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }

ERROR: 'unicode' object has no attribute 'get' Heat

Dear all

am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error

kindly advise me about this situation


ERROR: 'unicode' object has no attribute 'get'

heat_template_version: 2017-02-24
description: HOT Templates for SALIM lab cloud 

parameters:
  my_key:
    type: string
    label: my-prv
    description: Key name for salim lab enviorment
  win_image:
    type: string
    label: 2012 server
    description: Windows image 
  centos_image:
    type: string
    label: centos 7 x86
    description: centos 7 linux images
  flavor_40G:
    type: string
    label: flavor-40G
    default: flavor-40G
  flavor_80G:
    type: string
    label: flavor-80G
    default: flavor-80G
    description: ORACLE and TOMCAT Server Flavour
  pub_net:
    type: string
    label: oracle and tomcat 
    description: public network name

resources:
  private_net:
    type: OS::Neutron::Net
    properties:
      name: LAB-PRV-NET1
  private_subnet:
    type: OS::Neutron::Subnet
    properties:
      network_id: { get_resource: private_net }
      cidr: 192.168.9.0/24
      gateway_ip: 192.168.9.1
  LAB_ROUTER1:
    type: OS::Neutron::Router
    properties:
      external_gateway_info: { get_param: pub_net }
  LAB_ROUTER1_INT:
    type: OS::Neutron::RouterInterface
    properties:
      router_id: { get_resource:  LAB_ROUTER1 }
      subnet_id: { get_resource: private_subnet }
  TOM1_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM2_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  WIN_AD_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM1_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: TOM1_Port1 }
  TOM2_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net}
      port_id: { get_resource: TOM2_Port1 }
  WIN_AD_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: WIN_AD_Port1 }
  TOM1_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP2
      image: { get_param: centos_image }
      flavor: { get_param: flavor_40G }
      networks:
       - port: { get_resource: tom1_Port1}
  TOM2_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP1
      image: { get_param: centos_image }
      flavor: {get_param: flavor-40G }
      networks:
        - port: {get_resource: TOM2_Port1 }

  WIN-AD1:
    type: OS::Nova::Server
    properties:
      name:   win-AD
      image: { get_param: win_image }
      flavor: { get_param: flavor-40G }
      networks:
        - port: {get_resource: WIN_AD_Port1 }

outputs:
  TOM1_PRV_IP:
    description: Private ip For TOM1 Server
    value: { get_attr: [TOM1_SERVER1, first_address] }
  TOM2_PRV_IP:
    description: Private ip FOR tom2 Server
    value: { get_attr: [TOM2_SERVER1, first_address] }
  WIN-AD_prv_IP:
    description: Private iP FOR WIN AD Server
    value: { get_attr: [WIN-AD1, first_address] }

  TOM2_PUB_IP:
    description: Public ip for APP
    value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

  TOM1_PUB_IP:
    description: Public IP FOR TOM1-SERVER
    value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

  WIN_AD_PUB_IP:
    description: Public ip for WIN Server
    value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }

ERROR LOG details


2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 449, in _send
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     raise result
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi Traceback (most recent call last):
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/server.py", line 155, in _process_incoming
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     res = self.dispatcher.dispatch(message)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 222, in dispatch
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return self._do_dispatch(endpoint, method, ctxt, args)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 192, in _do_dispatch
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     result = func(ctxt, **new_args)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/osprofiler/profiler.py", line 153, in wrapper
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return f(*args, **kwargs)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/context.py", line 407, in wrapped
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return func(self, ctx, *args, **kwargs)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 813, in create_stack
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     template_id)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 710, in _parse_template_and_validate_stack
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     self.resource_enforcer.enforce_stack(stack)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/policy.py", line 125, in enforce_stack
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for res in stack.resources.values():
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in resources
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in <genexpr>
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 233, in __init__
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=False)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 388, in reparse
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     self.translate_properties(self.properties, client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 1053, in translate_properties
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     rule.execute_rule(client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 140, in execute_rule
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     if data.get(current_key) is None:
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi

ERROR: 'unicode' object has no attribute 'get' Heat

Dear all

am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error

kindly advise me about this situation


ERROR: 'unicode' object has no attribute 'get'

heat_template_version: 2017-02-24
description: HOT Templates for SALIM lab cloud 

parameters:
  my_key:
    type: string
    label: my-prv
    description: Key name for salim lab enviorment
  win_image:
    type: string
    label: 2012 server
    description: Windows image 
  centos_image:
    type: string
    label: centos 7 x86
    description: centos 7 linux images
  flavor_40G:
    type: string
    label: flavor-40G
    default: flavor-40G
  flavor_80G:
    type: string
    label: flavor-80G
    default: flavor-80G
    description: ORACLE and TOMCAT Server Flavour
  pub_net:
    type: string
    label: oracle and tomcat 
    description: public network name

resources:
  private_net:
    type: OS::Neutron::Net
    properties:
      name: LAB-PRV-NET1
  private_subnet:
    type: OS::Neutron::Subnet
    properties:
      network_id: { get_resource: private_net }
      cidr: 192.168.9.0/24
      gateway_ip: 192.168.9.1
  LAB_ROUTER1:
    type: OS::Neutron::Router
    properties:
      external_gateway_info: { get_param: pub_net }
  LAB_ROUTER1_INT:
    type: OS::Neutron::RouterInterface
    properties:
      router_id: { get_resource:  LAB_ROUTER1 }
      subnet_id: { get_resource: private_subnet }
  TOM1_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM2_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  WIN_AD_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM1_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: TOM1_Port1 }
  TOM2_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net}
      port_id: { get_resource: TOM2_Port1 }
  WIN_AD_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: WIN_AD_Port1 }
  TOM1_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP2
      image: { get_param: centos_image }
      flavor: { get_param: flavor_40G }
      networks:
       - port: { get_resource: tom1_Port1}
  TOM2_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP1
      image: { get_param: centos_image }
      flavor: {get_param: flavor-40G }
      networks:
        - port: {get_resource: TOM2_Port1 }

  WIN-AD1:
    type: OS::Nova::Server
    properties:
      name:   win-AD
      image: { get_param: win_image }
      flavor: { get_param: flavor-40G }
      networks:
        - port: {get_resource: WIN_AD_Port1 }

outputs:
  TOM1_PRV_IP:
    description: Private ip For TOM1 Server
    value: { get_attr: [TOM1_SERVER1, first_address] }
  TOM2_PRV_IP:
    description: Private ip FOR tom2 Server
    value: { get_attr: [TOM2_SERVER1, first_address] }
  WIN-AD_prv_IP:
    description: Private iP FOR WIN AD Server
    value: { get_attr: [WIN-AD1, first_address] }

  TOM2_PUB_IP:
    description: Public ip for APP
    value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

  TOM1_PUB_IP:
    description: Public IP FOR TOM1-SERVER
    value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

  WIN_AD_PUB_IP:
    description: Public ip for WIN Server
    value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }

ERROR LOG details


 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 449, in _send
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     raise result
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi Traceback (most recent call last):
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/server.py", line 155, in _process_incoming
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     res = self.dispatcher.dispatch(message)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 222, in dispatch
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return self._do_dispatch(endpoint, method, ctxt, args)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 192, in _do_dispatch
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     result = func(ctxt, **new_args)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/osprofiler/profiler.py", line 153, in wrapper
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return f(*args, **kwargs)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/context.py", line 407, in wrapped
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return func(self, ctx, *args, **kwargs)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 813, in create_stack
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     template_id)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 710, in _parse_template_and_validate_stack
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     self.resource_enforcer.enforce_stack(stack)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/policy.py", line 125, in enforce_stack
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for res in stack.resources.values():
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in resources
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in <genexpr>
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 233, in __init__
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=False)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 388, in reparse
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     self.translate_properties(self.properties, client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 1053, in translate_properties
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     rule.execute_rule(client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 140, in execute_rule
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
 2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     if data.get(current_key) is None:
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     if data.get(current_key) is None:
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.872 2737 INFO eventlet.wsgi.server [req-1268be45-6ed2-49e7-b5cf-3bb3052fc80e - admin - - -] 192.168.8.116 - - [14/Sep/2017 10:28:06] "POST /v1/139aa024373b4d4d99cf706508465f1a/stacks HTTP/1.1" 400 486 0.386129

ERROR: 'unicode' object has no attribute 'get' Heat

Dear all

am facing an issue with my heat template . while creating stack its throwing an exception( given in below) , also verified with heat template validate command and its validated successfully without any error

kindly advise me about this situation


ERROR: 'unicode' object has no attribute 'get'

heat_template_version: 2017-02-24
description: HOT Templates for SALIM lab cloud 

parameters:
  my_key:
    type: string
    label: my-prv
    description: Key name for salim lab enviorment
  win_image:
    type: string
    label: 2012 server
    description: Windows image 
  centos_image:
    type: string
    label: centos 7 x86
    description: centos 7 linux images
  flavor_40G:
    type: string
    label: flavor-40G
    default: flavor-40G
  flavor_80G:
    type: string
    label: flavor-80G
    default: flavor-80G
    description: ORACLE and TOMCAT Server Flavour
  pub_net:
    type: string
    label: oracle and tomcat 
    description: public network name

resources:
  private_net:
    type: OS::Neutron::Net
    properties:
      name: LAB-PRV-NET1
  private_subnet:
    type: OS::Neutron::Subnet
    properties:
      network_id: { get_resource: private_net }
      cidr: 192.168.9.0/24
      gateway_ip: 192.168.9.1
  LAB_ROUTER1:
    type: OS::Neutron::Router
    properties:
      external_gateway_info: { get_param: pub_net }
  LAB_ROUTER1_INT:
    type: OS::Neutron::RouterInterface
    properties:
      router_id: { get_resource:  LAB_ROUTER1 }
      subnet_id: { get_resource: private_subnet }
  TOM1_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM2_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  WIN_AD_Port1:
    type: OS::Neutron::Port
    properties:
      network_id: { get_resource: private_net }
      fixed_ips:
        - subnet_id: { get_resource: private_subnet }
  TOM1_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: TOM1_Port1 }
  TOM2_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net}
      port_id: { get_resource: TOM2_Port1 }
  WIN_AD_FL_IP:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network_id: { get_param: pub_net }
      port_id: { get_resource: WIN_AD_Port1 }
  TOM1_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP2
      image: { get_param: centos_image }
      flavor: { get_param: flavor_40G }
      networks:
       - port: { get_resource: tom1_Port1}
  TOM2_SERVER1:
    type: OS::Nova::Server
    properties:
      name: APP1
      image: { get_param: centos_image }
      flavor: {get_param: flavor-40G }
      networks:
        - port: {get_resource: TOM2_Port1 }

  WIN-AD1:
    type: OS::Nova::Server
    properties:
      name:   win-AD
      image: { get_param: win_image }
      flavor: { get_param: flavor-40G }
      networks:
        - port: {get_resource: WIN_AD_Port1 }

outputs:
  TOM1_PRV_IP:
    description: Private ip For TOM1 Server
    value: { get_attr: [TOM1_SERVER1, first_address] }
  TOM2_PRV_IP:
    description: Private ip FOR tom2 Server
    value: { get_attr: [TOM2_SERVER1, first_address] }
  WIN-AD_prv_IP:
    description: Private iP FOR WIN AD Server
    value: { get_attr: [WIN-AD1, first_address] }

  TOM2_PUB_IP:
    description: Public ip for APP
    value: { get_attr: [TOM2_FL_IP, floating_ip_address] }

  TOM1_PUB_IP:
    description: Public IP FOR TOM1-SERVER
    value: { get_attr: [TOM1_FL_IP, floating_ip_address] }

  WIN_AD_PUB_IP:
    description: Public ip for WIN Server
    value: {get_attr: [WIN_AD_FL_IP, floating_ip_address] }

ERROR LOG details


    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 449, in _send
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     raise result
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi Traceback (most recent call last):
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/server.py", line 155, in _process_incoming
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     res = self.dispatcher.dispatch(message)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 222, in dispatch
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return self._do_dispatch(endpoint, method, ctxt, args)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 192, in _do_dispatch
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     result = func(ctxt, **new_args)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/osprofiler/profiler.py", line 153, in wrapper
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return f(*args, **kwargs)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/context.py", line 407, in wrapped
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     return func(self, ctx, *args, **kwargs)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 813, in create_stack
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     template_id)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 710, in _parse_template_and_validate_stack
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     self.resource_enforcer.enforce_stack(stack)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/policy.py", line 125, in enforce_stack
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for res in stack.resources.values():
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in resources
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in <genexpr>
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 233, in __init__
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=False)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 388, in reparse
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     self.translate_properties(self.properties, client_resolve)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 1053, in translate_properties
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     rule.execute_rule(client_resolve)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 140, in execute_rule
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     if data.get(current_key) is None:
    2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi     if data.get(current_key) is None:
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi
2017-09-14 10:28:06.872 2737 2017-09-14 10:20:54.977 2735 INFO eventlet.wsgi.server [req-1268be45-6ed2-49e7-b5cf-3bb3052fc80e [req-0e84ce74-a51e-45e1-9ebf-093b7022ad38 - admin - - -] 192.168.8.116 - - [14/Sep/2017 10:28:06] 10:20:54] "POST /v1/139aa024373b4d4d99cf706508465f1a/validate HTTP/1.1" 200 767 0.389691
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi [req-2fa7f6ca-812b-4fa1-8151-94d9a019900c - admin - - -] Unexpected error occurred serving API: 'unicode' object has no attribute 'get'
Traceback (most recent call last):

  File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/server.py", line 155, in _process_incoming
    res = self.dispatcher.dispatch(message)

  File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 222, in dispatch
    return self._do_dispatch(endpoint, method, ctxt, args)

  File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 192, in _do_dispatch
    result = func(ctxt, **new_args)

  File "/usr/lib/python2.7/dist-packages/osprofiler/profiler.py", line 153, in wrapper
    return f(*args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/heat/common/context.py", line 407, in wrapped
    return func(self, ctx, *args, **kwargs)

  File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 813, in create_stack
    template_id)

  File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 710, in _parse_template_and_validate_stack
    self.resource_enforcer.enforce_stack(stack)

  File "/usr/lib/python2.7/dist-packages/heat/common/policy.py", line 125, in enforce_stack
    for res in stack.resources.values():

  File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in resources
    for (name, data) in res_defns.items())

  File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in <genexpr>
    for (name, data) in res_defns.items())

  File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 233, in __init__
    client_resolve=False)

  File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 388, in reparse
    self.translate_properties(self.properties, client_resolve)

  File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 1053, in translate_properties
    rule.execute_rule(client_resolve)

  File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 140, in execute_rule
    client_resolve=client_resolve)

  File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
    client_resolve=client_resolve)

  File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
    if data.get(current_key) is None:

AttributeError: 'unicode' object has no attribute 'get'
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi Traceback (most recent call last):
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/wsgi.py", line 839, in __call__
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     request, **action_args)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/wsgi.py", line 913, in dispatch
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     return method(*args, **kwargs)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/api/openstack/v1/util.py", line 38, in handle_stack_method
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     return handler(controller, req, **kwargs)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/api/openstack/v1/stacks.py", line 401, in create
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     environment_files=data.environment_files())
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/rpc/client.py", line 252, in create_stack
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     args, environment_files=environment_files)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/rpc/client.py", line 282, in _create_stack
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     version='1.29')
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/rpc/client.py", line 85, in call
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     return client.call(ctxt, method, **kwargs)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/client.py", line 169, in call
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     retry=self.retry)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/transport.py", line 97, in _send
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     timeout=timeout, retry=retry)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 458, in send
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     retry=retry)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py", line 449, in _send
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     raise result
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi Traceback (most recent call last):
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/server.py", line 155, in _process_incoming
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     res = self.dispatcher.dispatch(message)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 222, in dispatch
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     return self._do_dispatch(endpoint, method, ctxt, args)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 192, in _do_dispatch
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     result = func(ctxt, **new_args)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/osprofiler/profiler.py", line 153, in wrapper
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     return f(*args, **kwargs)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/context.py", line 407, in wrapped
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     return func(self, ctx, *args, **kwargs)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 813, in create_stack
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     template_id)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/service.py", line 710, in _parse_template_and_validate_stack
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     self.resource_enforcer.enforce_stack(stack)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/common/policy.py", line 125, in enforce_stack
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     for res in stack.resources.values():
017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in resources
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/stack.py", line 310, in <genexpr>
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     for (name, data) in res_defns.items())
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 233, in __init__
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     client_resolve=False)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 388, in reparse
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     self.translate_properties(self.properties, client_resolve)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/resource.py", line 1053, in translate_properties
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     rule.execute_rule(client_resolve)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 140, in execute_rule
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 270, in translate_property
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     client_resolve=client_resolve)
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi   File "/usr/lib/python2.7/dist-packages/heat/engine/translation.py", line 248, in translate_property
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi     if data.get(current_key) is None:
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi AttributeError: 'unicode' object has no attribute 'get'
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.389 2738 ERROR heat.common.wsgi
2017-09-14 10:25:48.391 2738 INFO eventlet.wsgi.server [req-2fa7f6ca-812b-4fa1-8151-94d9a019900c - admin - - -] 192.168.8.116 - - [14/Sep/2017 10:25:48] "POST /v1/139aa024373b4d4d99cf706508465f1a/stacks HTTP/1.1" 400 486 0.386129
0.418274
2017-09-14 10:28:06.870 2737 ERROR heat.common.wsgi [req-1268be45-6ed2-49e7-b5cf-3bb3052fc80e - admin - - -] Unexpected error occurred serving API: 'unicode' object has no attribute 'get'