I have stack is described next template:
HeatTemplateFormatVersion: '2012-12-12'
Description: |
Template which tests neutron load balancing resources
Parameters:
key_name:
Type: String
flavor:
Type: String
image:
Type: String
private_subnet_id:
Type: String
external_network_id:
Type: String
Resources:
TestHealthMonitor:
Type: OS::Neutron::HealthMonitor
Properties:
delay: 3
type: HTTP
timeout: 3
max_retries: 3
TestHealthMonitor2:
Type: OS::Neutron::HealthMonitor
Properties:
delay: 3
type: HTTP
timeout: 3
max_retries: 3
TestPool:
Type: OS::Neutron::Pool
Properties:
lb_method: ROUND_ROBIN
protocol: HTTP
subnet_id: {Ref: private_subnet_id}
vip:
protocol_port: 80
monitors:
- {Ref: TestHealthMonitor}
- {Ref: TestHealthMonitor2}
Then I remove one of the references ( -{Ref: TestHealthMonitor2} ), and try update my stack.
As result I have got error next trace back: http://paste.openstack.org/show/73489/
The problem is connected with unresolved properties. The old template stored values, which were parsed using resolve_static_data : https:/ /github. com/openstack/ heat/blob/ master/ heat/engine/ resources/ neutron/ loadbalancer. py#L386
So instead resolved monitors id we have only built-in functions.
In my vision, we should use self.properties for getting required properties.