Allow Description in properties schema

The resource document generation already expects
and uses any supplied Description text.

Change-Id: Ife31cd99f6ff88345c3c06e3efeb4b3393e6351b
Fix install.sh calling setup.py

a25d888c914b417b2e7fba9bd497088b22a46309 broke install.sh due
to making the setup.py 644

Change-Id: I18e0340e4ae191eea68516b54483db72d93a7b2c
Allow Parameters to set defaults for TemplateResource

Although it is theoretically possible to infer default values for the
Properties of a TemplateResource from the Parameters of the provider
template, this presents a number of conversion issues that are presently
unhandled.

Instead, pass parameter values only for properties that are supplied.  For
the others, allow the parameter defaults in the template to be used.

Change-Id: I2ba49ffeee06c3a272694c18b3875f843ade1e6c
Create a Schema from a parameter

Add a classmethod to create a property Schema object directly from a
parameter schema.

Change-Id: I335ec48086ea5aeb1fb2afd9af8e93529d9b6051
Wrap the resource registration in a global environment

Change-Id: I065dadc9fae19ab21d6d4aeae08334f20da161bb
Use LONGTEXT for templates in MySQL

TEXT in PostgreSQL is an unlimited column size. However, in MySQL, it is
limited to 2^16 bytes. LONGTEXT allows 2^32 bytes, which is overkill,
but will prevent MySQL from silently truncating this column and thus
rendering the entire tenant's API access moot.

Fixes bug #1210799

Change-Id: Ib2b379db32a8296cf8c5a2434e7615afc59288e3
Merge "Allow Parameters to set defaults for TemplateResource"
Merge "Allow Description in properties schema"
Use system locale when Accept-Language header is not provided

Remove en_US as the default language when no header is provided, and use
None instead. Upon translation None will be defaulted to system as it
was before the translation changes.

Fixes bug: #1214476

Change-Id: I0fe22c526710e69ae0731e7d0b42170e6f3a8523
Convert heat.common.template_format to use C yaml

Will fall back to pyyaml if CSafeLoader/CSafeDumper are not available.
This should increase template parsing performance by a factor of 9 and
reduce memory usage by an order of magnitude.

We also convert the one test that was directly calling yaml to use the
template_format.parse function, so that the same parsing is used
everywhere.

Change-Id: I0d14be2ef7fb2dccac43fc41b1d2d9e4395c6f77
Fixes bug #1214580
Introduce nova_utils.server_to_ipaddress

Create a utility function used for now by the instance and load balancer
resources to retrieve one IP of a nova server.

Change-Id: I87ace4c61b03a66f3b0c30f3bacd2fce79332ed0
Merge "Wrap the resource registration in a global environment"
Merge "Create a Schema from a parameter"
Fix incorrect use of ServerError

ServerError is being incorrectly used to report an internal error
leading to an error formatting the response, as there's no body
specified to the format string.  Use exception.Error instead and
adjust the message to make the user-visible response clearer.

Fixes bug #1214457

Change-Id: I83435686170c4f40658968a35f1faa303f50f4a4
Handling re-delete in rackspace db resource

Current implementation of db resource throws exception if the
resource was already deleted(All the other resources are not
throwing). This fix is to make db resource behavior similar to
other resources.

Fixes Bug #1197077

Change-Id: I4537180115400e6f6183e72a74bdd3ada220a3fa
Use Template to instantiate TemplateResource

Use the Template class, rather than the raw template data, to obtain the
information required to create the schema of a TemplateResource facade.
This will allow this feature to work with multiple template formats (e.g.
HOT vs. CloudFormation).

Change-Id: Ifde739b081e95ed9f14567f35a0a1680c5e9b631
Generate property Schema objects directly from parameters

Use Schema.from_parameter() instead of Property.schema_from_param() to
generate a property schema from a parameter schema.

Change-Id: I1049822057d954ddbb47027aad136f7b45541943
Remove the Property.schema_from_param() method

This is now unused.

Change-Id: I5da20effe72a791d6dd8e9cc99ec9e43dea2da07
Add new attributes to EIPAssociation resource

AllocationId
NetworkInterfaceId

The EIP resource also now supports the Domain property, which when set
creates the resource using neutron networking. (Neutron networking is
required for all VPC operations.)

The EIP test covers the new functionality as well as some of the old
using both nova and neutron.

Fixes bug #1164865
Fixes bug #1164866

Change-Id: I7ad7fba8ed6f8a584fc2ca00aaf80144c5274134
Process request exceptions while fetching template

requests raises subclass of requests.exception.RequestException, not
IOError. And the code explicitly calls raise_for_status to avoid HTTP
errors being silently ignored.

Fixes bug #1214429

Change-Id: Ib3ea7e4fea459a231f0bb7f113e3d66983b006c2