Ensure all REST API error responses are consistent

Heat exceptions are serialized into JSON/XML responses by the fault app,
which is at the end of the WSGI pipeline. Some REST API errors however
are raised as HTTPExceptions, which are treated by WSGI as responses
ready to be sent back to the user, and they can't reach the fault app.

This patch set disguises HTTPExceptions raised by the wsgi.Resource so
they can reach the app that will serialize them just like all other
errors.

Fixes bug 1208620

Change-Id: Id98dbc1e3b208401be8f0119a6d72d4561a2221a
Validate created/updated stacks in StackResource

StackResource.create_with_template and update_with_template now validate
the resulting stacks.

Change-Id: I52a81edb2af6bee70146f6dbd2179900e580d69b
Do validation in parameter schema

Provide validate method in parameter schema and call it in each
parameter object.

Implements blueprint hot-parameters

Change-Id: Ia85c5fe9eb777bc1e5f76f9ddb08a6ec96100c38
ReST API: Add an API for retrieving resource schemata

blueprint resource-properties-schema

Change-Id: I07523a5996eea37a414310c21414be6454d08bfe
Use correct actions for StackResource

To perform actions on a stack, we should use the action constants defined
in the Stack, not in another object (and especially not in a Resource).

Change-Id: I3044f6286fc2690c121a3446f42a6896b3ed3271
Fix intermittent failure in autoscaling tests

Tests for autoscaling suspend and resume sometimes fail because of an
order issue. The branch changes the mock calls to not rely on order.

Change-Id: I74bcde5c6b486fecbb2c2ed0685ce18c786aa974
Not to eat Metadata parsing error

Exception raised while resolving metadata is treated as database
exception and eaten.

A few testing errors are revealed after metadata parsing error is
propagated to callers.

Fixes bug #1207193

Change-Id: I3b5cc5fed3896b7fe59533c7d09f0226e5cf5ad9
Introduce new resource_data_delete db api

This allows removing data associated during to resources during its
lifecycle.

Change-Id: Id45e7cb9129a8187229c708e0d3f6cb2a591bb39
Add debug option to run_tests.sh

Change-Id: Ie21cb8b7a370d5e62c7ac75d37affd62f761765a
Merge "ReST API: Add an API for retrieving resource schemata"
Move heat-cfn, heat-boto, heat-watch to new repo

The new home for these tools is
https://github.com/openstack-dev/heat-cfnclient

These tools are now aimed at heat developers only
and they will not be released or packaged.

Change-Id: I1ea62ef17e81ab53cacb5e4940f0c4e2516ed383
Merge "Introduce new resource_data_delete db api"
Revert "Add missing _ imports to allow doc generation"

This change reverts commit 0453785f3f7b2a578b433cb0544394aac9bcfb95 and
fixes a bug where the _() was not being recognized when building the
documentation while preserving the delayed translation of error
messages.

Closes-Bug: #1211507
Related-Bug: #1209413

Change-Id: I5d52941e1f08ec656f7279efb6cdf496d81861da
Adding HOT str_replace and get_resource functions

This patch adds support for two functions, get_resource and str_replace to HOT
to enable the definition of new HOT samples. Especially str_replace aims to
simplify the definition of scripts in HOT templates.

Change-Id: Ic14fee36bdc0b9c5d79ade7ece5fa1b5331c864a
Tidy up a few places in test_engine_serivce.py

Change-Id: I3ce32f5057cd074f55466de3a78d8783ab161943
Add constraint checking to Property schema

Change-Id: Ibec4068a0497ca6ac1dd25decd27fa87585b18a3
Remove unneccessary Property constraints from unit tests

It doesn't really make a lot of sense to have constraints on the number of
keys in a Map Property, or on the allowed values in a List Property. In
both cases, we can and should define the Schema for each item. Neither is
used anywhere in the code, since the new Schema/Constraints do not allow
it, and SchemaTest.test_all_resource_schemata() tests that all existing
schemata are valid.

Change-Id: I24e11ec59c75ef770bf040ee8151bbe061f4a864
Move property constraints validation to Schema

Change-Id: I6e296dfc2243da7cabd24d65799036fc245f0f7a
Update Oslo to 96d1f887dda Part 1

Oslo version 96d1f887dda21b43ba4376187f31953dee6f5273

This commit just injects fresh portion of code from Oslo
into Heat and fixes all the issues with new code

Partially implements blueprint oslo-db-support

Change-Id: I7e98c12ddf6689efc6ea6a4deab0b1c840297730
Hot SoftwareConfig model part

Provide components model and related methods

Implements blueprint hot-software-config

Change-Id: I251d10f25943513ef346883263a4dd2e0f6fb7a6