Implement handle_update for FloatingIPAssociation resource

1. modify the property "port_id" to be required.
2. Implement handle_update for FloatingIPAssociation resource, allows to
update FloatingIpAssociation with new port_id(and fixedIp if port has
multipleIps) and new floatingip_id.

Change-Id: Ie40669bee849d91ed93446dcf7f066fe6a5b2961
Implements: blueprint handle-update-for-floatingip
remove default=None for config options

In the cfg module default=None is set as the default value.

Change-Id: Idb78d3e25c79aba0d74fdd747efe2e17b6faa129
Closes-Bug: #1323975
Pass the parent's registry into child stacks

We make sure that there is no infinite recursion by not repeating
a TemplateResource within a resources inheritance.

Change-Id: I1ffa66886923b15b52a8075089dd4042f0a55862
Fixes-bug: #1297396
doc: generate a valid xml tree

This patch makes sure that the <emphasis> tags used in the resources
generator are embeded in a <paragraph>.

This change makes it easier to convert from docutils XML to docbook by
providing a valid XML tree.

Change-Id: Icd48d8cc6d868f484de895a07bd696e951884109
Add OS:Barbican:Secret resource

This adds a Barbican Secret resource to contrib plugins allowing secrets
to be created using barbican's infrastructure.

Co-Authored-By: Anderson Mesquita <andersonvom@gmail.com>
Implements: blueprint barbican-resources
Change-Id: Ie9d345b8a1186cd9e00f6a083652f4f0466e94c3
Add OS:Barbican:Order resource

This adds a Barbican Order resource to contrib plugins allowing
orders for secrets to be issued using barbican's infrastructure.

Implements: blueprint barbican-resources
Change-Id: I8c9bc4bc2c1fecc9c3a5263af74e739dd9eea2ab
Define options for glance client

Add a clients_glance section in common config to be able to specify
dedicated options for accessing the glance service.

Change-Id: Ic2783cb04b8e4f081aad0f7f4a5789a283d43bfa
Closes-Bug: #1324950
Use entry points for config generation

This starts using entry points to generate configuration for the
common.config and the common.wsgi modules, as they use entries with the
same name in different groups.
This also removes configuration for sslutils which is unused, and
re-enable the check for up-to-date configuration.

Co-Authored-By: ala.rezmerita@cloudwatt.com
Closes-Bug: #1288586
Change-Id: If48c62bbb2b1fb641791dad56f7f905e483080fa
Fix exceptions in update_stack

Updating an in-progress stack is not supported by Heat.  Previously, a
NotSupported exception would be raised.  This was not consistent with
other actions, such as abandon stack.  Instead, let StackLock.acquire
raise an ActionInProgress exception.  Suspended stacks will still result
in a NotSupported exception being raised if an attempt is made to update
them.

Closes-Bug: #1308109
Change-Id: Ic844b06cd654d7bd5d422bba81d1d8246a5d8dd0
Add a ResourceDefinition class

This class provides a comparable, hashable representation of a resource's
definition in a template that is independent of the template format.

Implements: blueprint resource-template-api

Change-Id: I183114596863fbe0c0ff7cd22134b37493ed0dd9
Use ResourceDefinition for creating Resources

Initialise resources with a ResourceDefinition object rather than a JSON
snippet from a template. We no longer need to store the json_snippet (since
the resolving of intrinsic functions is reversible when necessary), so get
rid of it.

Change-Id: I23d183d986ab1d771407502ec926e736d1f48d79
Get the dependency graph directly from functions

Prior to this change, while template formats were pluggable, only the
intrinsic functions defined by HOT and CloudFormation could affect
the dependency graph. This moves knowledge of the template format out of
the Resource class and allows the ResourceDefinition to determine it in a
format-independent manner by collecting it from the intrinsic functions
defined by the template plugin.

Change-Id: I592ac2074a600a44578ce97309def1280c72e61d
Remove translation from loguserdata

The logs in loguserdata don't need to be translated because it's sent
with the po files to instances, and actually break because of gettext
not being used

Closes-Bug: #1325313
Change-Id: I365f3d882b8f64f9710eea4901ac266f9fcf0da3
Fix requirements_style_check on BSD platforms

On Linux, the sort command implicitly ignore non-alphanumeric characters
when sorting.  Since the '>' character has an ASCII value greater than
the '-' character, the following list will be sorted on Linux, but not
on a Mac:

SQLAlchemy>=0.7.8,<=0.9.99
sqlalchemy-migrate>=0.9.1

This makes sort explicitly ignore such characters and will keep the
tests consistent across different environments.

Closes-Bug: #1324945
Change-Id: I559ae4b4c3e2a7d190af9d4b1517dfaf23d114b1
Include parameter name in error message

Including parameter name in StackValidationFailed exception
message.

Change-Id: I9d8f4e4a1986496d9be96f0e2a272cbc4da92b49
Closes-Bug: #1324968
Merge "Add a ResourceDefinition class"
Fix default template for AWS::CloudWatch::Alarm with Ceilometer

Existing template assumes certain parameters to be delimited
strings rather than lists and uses 'Fn::Split' to convert them
to list. However, delimitedstring representations of parameters
are by default converted to list for CommaDelimitedList types.
Also includes change for CommaDelimitedList to accept empty string.

Change-Id: Ib566f1d098c575a80c4f1a975eaaaac93d70af34
Closes-Bug: #1316842
Merge "Use ResourceDefinition for creating Resources"
Merge "Get the dependency graph directly from functions"
Adding error message for output description

All caught exceptions should be displayed in output section.

Change-Id: I217bb52e33c3f0d20c3d01e75326687cc713d90a
Related-Bug: #1273490