Add log output about HTTP calls in cinderclient

This patch enables heat to output the details of requests
to cinder and responses from cinder
(including 'x-openstack-request-id' in the response header)
to the log.

Change-Id: I714c87e538bc3a51dce6a48e584824cf7f954bcf
Closes-bug: #1329613
Adding validation algorithm for get attr functions

Turn on validation for functions Fn::GetAtt and get_attr.
Validation will be skipped if resource has overwritten FnGetAtt method.

Related-Bug: #1273490
Change-Id: I15b6b7447face0cf2fe1d6059d3fb900778b66cc
Using default FnGetRefId behavior for LaunchConfig

FnGetRefId of LaunchConfig returns only physical_resource_name, but in
the case where a resource is not created, resource.id equals None. So the
result of FnGetRefId will be None too. It gives unpredictable behavior
during preview, when other resources return None too.

Change-Id: I425f777dbd0600e35354b0d5308cdaf701d85119
Closes-Bug: #1324493
Add "backup" column to stack table

Adds a backup boolean field to the stack record, defaulted to False,
with a migration which sets it to True for existing backup stacks,
which are named stackname* (which is an invalid name for any non-
backup stack).  Also adds the related column to the DB model and the
Stack object, so when we store a backup stack the flag will be set.

blueprint: list-nested
Change-Id: I737596a7248e8dd0c18a3f444f3b39a2b2e966c8
WaitConditionHandle resources, create events with reason data

Return data describing the status and reason for the signal when
handling a signal for a WaitConditionHandle resource.  This enables
an informative reason to be included in the event associated with
the signal created in resource.Resource.signal, currently it is
always "Unknown"

Change-Id: If504fd49a479f783e034ff908ecdf785faaac265
Partial-Bug: #1340894
Return metadata from resource_signal RPC interface

To enable us to completely remove the metadata_update call without
breaking the current CFN waitcondition API, we need to return the
resource metadata, like metadata_update does (currently we don't
return anything when handling a signal).  This should not be
expensive as the metadata has just been updated, thus should be
cached inside the resource object.

Change-Id: I29bf6f9f5fab133b06ab8ecc92d7556a9bb6e35a
Implement snapshots for servers and volumes

This provides the snapshot facility for server and volume resources.

Implements: blueprint stack-snapshot
Co-Authored-By: ala.rezmerita@cloudwatt.com
Change-Id: Id5e63f1a0081e29dc84bd1b71f9d40ae672877f6
Convert AWS Route Table and association to use clients.

Changed client calls to properly use the new client plugin mechanism.

Change-Id: I7fba8e9adf1801993c815565f567a07603bb2bd8
Merge "Add log output about HTTP calls in cinderclient"
Privilege checking for heat-keystone-setup-domain

This patch added additional exception handling so that a non-admin user
will understand why his/her attempt to run this script failed.

Change-Id: I20a593f613931de0b3c13094a2e0b6c2f2b0eea1
Closes-Bug: 1354687
Make Fn::Join give a better error message

When something goes wrong at the moment users are left staring hard
at their template trying to figure out whats wrong. We can make this a
lot easier by showing them the failed object.

Change-Id: If87447b7e160591505a68d857e8ef1751aac3723
Merge "Privilege checking for heat-keystone-setup-domain"
Merge "Adding validation algorithm for get attr functions"
Fix client exception handling in VolumeExtendTask

This class was not ported correctly to use new is_client_exception
method of client_plugin.

Change-Id: I2982c369b4379894d0a50eeae90cb7620bb6f7d9
Add utility functions for Swift TempURLs

blueprint swiftsignal-resource

Change-Id: I88c78b74dfb3c23cf74831bda3a9bdc69df6162a
engine service add owner_id to create_stack

Adds owner_id as an optional argument to the top-level interface for
handling stack-creates, so it will be possible to create a nested stack
via an RPC call between engines.

Change-Id: I319e0d906d6ad54da6ce782a8a9dd9704f40e225
blueprint: decouple-nested
rpc client test remove rpcapi logic

Remove the test logic which allows overriding the rpcapi, since this
is not used anywhere.  Instead make the rpcapi a test class attribute
so it can be more easily used inside tests.

Change-Id: I21902f46919674093945c84fffda5a8e276f76b5
Add owner_id to new _create_stack RPC interface

Adds a new "internal" _create_stack RPC call, which exposes a superset
of the existing RPC interfaces, intended only for engine-to-engine
usage, not for exposure via the user-facing API's (hence the prefix)

This patch exposes "owner_id" via the new call, which enables creation
of nested stacks via an RPC call, instead of creating the stack directly.

Change-Id: I355c608e657cb9dae2d2b38658b0b247040de6b9
blueprint: decouple-nested
Add OS::Swift::Signal resource

blueprint swiftsignal-resource

Change-Id: I5ba523210aa9aefbf46eeaa0d95293608a820f95
Add some stubs speeding up test suite

Some recent changes added about 4 minutes to test runtime because some
validation was trying to connect to the outside and it took lots of time
for it to fail.

Change-Id: I88f64c698822c712a07021ffc653a01e67fb7d7b