Added session_persistence property to VIP

Added new property session_persistance to the OS::Neutron::LoadBalancer
resource attribute VIP. Now user can configure session stickness feature
in Neutron LBaaS.

Change-Id: I9afd1a8c222110899a90a940e7a549278c4467b7
Closes-Bug: #1259078
Update log message for scale out/in

When create two stacks with same template with autoscaling group,
then when scale out/in, the log message would be as
(HadoopSlaveScaleUpPolicy is my scale up alarm and HadoopSGroup is
my autoscaling group):

HadoopSlaveScaleUpPolicy Alarm, adjusting Group HadoopSGroup by 1

From above log message, I do not know which stack is being scaled up.

This patch add scale group id to the log message so that we can know
which group is being scale out/in.

Change-Id: Ie4862e9738c652b813b3dae01f9aeb3557e79b9a
Closes-Bug: #1265315
log warning, when $SERVICE_HOST is localhost

Warn users, if heat-keystone-setup can only use localhost as $SERVICE_HOST.
And remove an extra whitespace.

Change-Id: I1b2a1b93212b6ab0ca092bb6c834255ee75176ca
Use oslo db.migration script

Turn Heat's migration script into a simple wrapper around olso's.
The api is a bit different so for now keep ours inplace.
All that our script does is find the path to the migration_repo
and call the oslo code. No point having two implementations in the
same codebase.

Change-Id: I0aa3e10890f924d77268f4118dae53b446e193eb
Fix get_column_num problem in heat-keystone-setup

get_column_num function searches the second line of command output,
to get the field number for a specific field.

But output of 'keystone user-list' may have an extra line: 'WARNING:
Bypassing authentication using a token & endpoint ...'

This messes up the functionality of get_column_num function

Closes-bug: #1260556
Change-Id: I8c6e7f939466154c5e31e6f019e20fb855e15878
I18N support for InvalidContentType exception

The error message of InvalidContentType exception should support i18n as
other exceptions.

Change-Id: I7a4c15eb69fbc1fd6e2caa9c0503685ec8b53941
Closes-Bug: #1265694
Test db migration 31

Add some data into the db and make sure the alter table works.

Change-Id: I13df69198e3dcdc6f4ab562041bfadb890782328
Add migration method to test sqldump files

This is very useful for testing real migration issues from a mysqldump.
You use it like this:

    def _pre_upgrade_031(self, engine):
       _load_mysql_dump_file(engine, 'dump.sql')

Change-Id: I0d5680d42d608bdc1cb70ccdf19a4c867b372351
Refactor Instance#_check_active

Currently, Instance#_check_active both checks whether the server is
active and attaches the volume. This commit separates that logic.

blueprint stack-check
Change-Id: I7fe805efc089535667e8d3840d79ade07430040c
Improve tools/uninstall-heat

Inform users that the script doesn't remove related role/user from keystone.

Change-Id: Ia0a7cb37ae568e37c86ff9047361c42186c21ab4
Add documentation for multi-engine

Describe how to set up Heat for a multi-engine deployment in the
document on scaling Heat.

blueprint multi-engine-docs
Change-Id: I5db28b3bc8f5f5dda2d86d052223159adef5f5f0
Replace try...except...pass block with assertRaises

To make the test logic looks tidy and clean.

Change-Id: Id278524a8d4b8bf953f6c3d250e47be04c5edb55
Introduce a way to trace a resource's implementation

We need a way to know whether a resource is really the
same during update. This is driven by TemplateResource
but not totally specific to it.

The problem is:
if you update a template with no changes (except for environment
or files changes) we need to know which resources to update.

This patch adds a "implementation_signature()" method that gives
us a mechanism to keep track of implementation changes like:
- a change in an environment mapping a resource to a new/different implementation
- a change in the content of a TemplateResource

And can distinguish between schema changes (requiring replacement) and
incremental changes (that can be updated in place).

Change-Id: I780074a827e3f51dede47a81f15e29dbe4d08804
Closes-bug: #1254966
Validate number of instance metadata entries

The Server resource arbitrarily limits instance metadata to five
entries, when the actual provider's maxServerMeta limit could be much
higher.  Make the Server resource check the provider's maxServerMeta
absolute limit and enforce that limit in validate().

Change-Id: Ic00fc6f3a41ae783e43bd7f2df8663263d9cbf90
Closes-Bug: #1260427
Fix schema format in template generation unit tests

Change-Id: I0c13d972100596e33e3f439e97326144a7fabbb4
remove obsolete comment from rackspace clients.py

Removing outdated comment from clients.py.

Change-Id: I06a86555996112130fdb7847de5d20042670c818
Remove override of "patch" function

Overriding the patch method with an incompatable argument
list breaks contrib tests that used the version from
TestCase. This method was introduced in commit
3eda05a9b0b69803a0269f2aa344d14e5823bf6d but removing this
method does not affect other tests.

Change-Id: Iaecd171e5a548b2843b46e7c4b8ef48c52af6db6
Closes-Bug: 1263241
Merge "Refactor Instance#_check_active"
Add ability to configure Heat and Trove client options

Make the client parameters "ca_file", "cert_file" "insecure" and
"key_file" configurable for Heat client and Trove client.
Partial-Bug: #1263165

Change-Id: If5e1669327db91fa2e0482b429611757df21fa88
Merge "Use oslo db.migration script"