Heat and Openstack incomplete documentation

Improve documentation running a heat template with devstack

Change-Id: Ifb6abd30a882d4c5197090c87498781702488b9c
Closes-Bug: #1326089
parser.Stack add stored_context

Adds a new stored_context method, which may allow for some cleanup
in service.py, and also enable switching from the request context
to the stored context when needed, e.g when the current context
auth_token is about to expire.

Change-Id: I7b797719036238c424905a5d2555dc00e40f4e89
Partial-Bug: #1306294
Restore resource metadata attribute

For backwards compatibility the Resource.metadata attribute
has been restored, however reading or assigning this attribute
will result in a deprecation warning.

Reading metadata will force a refresh from the database, which
maintains the previous behaviour rather than optimising for
performance.

Change-Id: Ifdcf3d98b99a09aac8755c84ef3f59d8602fc6a8
Closes-Bug: #1324704
Allow passing an existing user_creds_id to parser.Stack

Currently we always create a new user_creds entry every time a stack
is stored, even if a user_creds_id is passed to the constructor.  So
allow an existing user_creds ID to be respected.

This will enable optimisation of the creation of trusts, e.g so we won't
have to create a new trust for every nested stack, we can pass the top
level credentials into the nested stack instead, which means updates which
create nested stacks with a trust-scoped-token will work.

This will be required for updates via trusts from Solum, and probably
also to make OS::Heat::AutoScalingGroup work with the trust-alarm-urls
blueprint, where ceilometer will send a signal using a trust.

Change-Id: I7f78a2202514f13deb60ad7d66b9145447cc5625
Partial-Bug: #1317293
blueprint: trust-alarm-urls
Assume compute service_type for nova client

This change removes the ability to specify a non-compute service
type when requesting a nova client. The only non-compute service
type actually requested was the fallback path for cinder. However
nova volumes was completely removed from nova in grizzly, so we
do not need to support this any more.

Change-Id: I9e15f31979d44f018db69ebc8109f707b0f51671
Merge "Restore resource metadata attribute"
Merge "Assume compute service_type for nova client"
Unit tests: Always use ResourceDefinition for updates

Change-Id: I85ab9d0a3ed824020c7a38f7a814e7755a437b1a
Unit tests: always use ResourceDefinition for handle_update()

Change-Id: Ib243d6d1f4ff41c83fddcd0a3741cc28ff954448
Unit tests: Name resources the same as in template

We were creating a bunch of resources with a different name from their
definition in the template. This makes the data consistent.

Change-Id: Ibfaaea5077a4a97dc45b84d4d25bbba6a78425bf
Use ResourceDefinition to generate Properties

Change-Id: I30e9b38f79bbcf5532ca35724ef4af8131c06c3c
Unit tests: use ResourceDefinition to test facades

Change-Id: Ied4b3df4e15d165100eb5b059ac605879c6b9b5e
Merge "parser.Stack add stored_context"
Merge "Allow passing an existing user_creds_id to parser.Stack"
Merge "Unit tests: Always use ResourceDefinition for updates"
Merge "Unit tests: always use ResourceDefinition for handle_update()"
Merge "Unit tests: Name resources the same as in template"
Merge "Use ResourceDefinition to generate Properties"
Merge "Unit tests: use ResourceDefinition to test facades"
Merge "Heat and Openstack incomplete documentation"