Use new environment and parameters on stack update.

Without this, changes in parameters specified in the update
will not propagate to resources.

Fixes bug: #1199189
Change-Id: Ic19b907e9dd12c121757cb7c6b3d0342415d0482
Add length validation to properties of type LIST and MAP.

Fixing bug #1194981

Change-Id: I0537f105a61bba82e85b6b67d2354b77d8096eb1
Handle conversion of MAP properties to JSON params

Since JsonParameter takes either a string or a Mapping, just pass the property
value directly as is done with strings and numbers

contributes to blueprint provider-resource

Change-Id: I71d5c0d9e3fcf3ffea9a89d2c37888faec35cd4a
Rename part-handler.py to part_handler.py so it can be imported

Change-Id: I9e7e3be2f3155f3e35b2defdb89e9d84a02ae7cb
Global disable scheduler _sleep instead of mocking.

It is becoming increasingly difficult to predict when
a call to TaskRunner._sleep needs to be scripted, and is probably an
implementation detail which shouldn't be exposed to unit tests anyway.

This change defines a global which prevents sleeping in calls to _sleep
and toggles that global in HeatTestCase setUp.

Change-Id: I98dc88c9d120c409d5720895bb4fb625a1f12991
avoid excessive database calls while loading events

list_events constructs Event objects through Event.load, which causes
every event record previously loaded into memory to be reloaded again.
Furthermore, Event.load will also reload the associated stack, thus
all its resources and template. Another bad thing with that is
reloading a stack will lead to many extra stack static resolution
(including calls to nova to resovle Fn::GetAZs if it's referenced in
the template).

Fixes bug #1195793

Change-Id: I4f14c9a2a4f990b753a6e1405e27eb44c53537c9
Add Rackspace cloud loadbalancer resource.

Add a resource implementation of the Rackspace Cloud
Loadbalancer.

Change-Id: Ie62471424af3170c71e84bed69c603d243572fdb
provide test for nested stack error path

Fixes bug #1195310

Change-Id: I3c77287c92068b305f61fa4cbe4846aa56ab50e0
Do not override FnGetAtt

FnGetAtt is handled by the parent classes so no need to override

contributes to blueprint provider-resource

Change-Id: I3cb1bfc353fedf33336151f3ebc4d283330336a0
Merge "Handle conversion of MAP properties to JSON params"
Merge "Use new environment and parameters on stack update."
Merge "Add length validation to properties of type LIST and MAP."
Merge "Global disable scheduler _sleep instead of mocking."
engine : Allow loadbalancer resource to work with no key

Fixes bug #1137526

Change-Id: Ieff9c0b52633d45ac5164d966a362e50d5f499df
Merge "Do not override FnGetAtt"
Merge "provide test for nested stack error path"
Merge "Add Rackspace cloud loadbalancer resource."
Merge "engine : Allow loadbalancer resource to work with no key"
Merge "Rename part-handler.py to part_handler.py so it can be imported"
Merge "avoid excessive database calls while loading events"