Avoid ValueError in 12.04 essex pkg (bug 988523)

Change-Id: Icafe3e877efcfb326b607462de493739b2395365
cleanup dependent data upon user/tenant deletion

fixes bug 974199
fixes bug 973243

* upon deletion of tenant also delete user tenant relations
* upon deletion of tenant or user also delete corresponding metadata
* add foreign keys in metadata to ensure consistency

see also: https://bugs.launchpad.net/keystone/+bug/959294/comments/16

Change-Id: I264714fe82b727e3e0f5273bcb781a580a3f3826
Use ConfigOpts.find_file() to locate policy.json

Use cfg's new helper method to find policy config file. The basic
behavior is "look alongside the config file" with a fall back to
the standard default config paths.

Change-Id: Ic2a7187378eab9c9066118132465280993778a5e
Use ConfigOpts.find_file() to locate catalog template

Fixes bug #983734

Use cfg's new helper method to find the catalog template file. The basic
behavior is "look alongside the config file" with a fall back to the
standard default config paths.

Change-Id: Ia25fefafaa2c387d0207d630e5613389be364628
Add defaults for driver options

Avoid relying on the options being set in the config file.

Change-Id: Ib5859604492096c99c6428c63b3c1d03b3fbf621
Set defaults for port options

Avoid relying on the options being set in the config file.

Change-Id: I32c80be8601a502f3c65cacc1d0a7add3b2f652c
Set defaults for sql options

Avoid relying on the options being set in the config file.

Change-Id: I01db140ac757325a80f493b732064fa0f437df23
Add defaults for ldap options

Avoid relying on the options being set in the config file.

However, most of the defaults are probably not all that useful here
except maybe the objectClass and id attribute options.

Change-Id: Iaa31cec64be66ed6e7a9b8111f6c8a3fd96731cb
Improve the sample keystone.conf

Make sure all the available options are include in the file, add
some more documentation and, rather than set any of the defaults,
just include them as comments.

Change-Id: I2cb6060f47ea88349b1862d4d995c80cf9237066
Merge "Avoid ValueError in 12.04 essex pkg (bug 988523)"
Added tenant name validation. Fixes bug 966249.

1. Verified name length while creating/updating tenant (for all backends).
2. Disallowed blank tenant name in create/update.
3. Added unit test coverage.

Change-Id: Ied1e2707ba16e14d791308fb618ca18effa0245f
Merge changes I2cb6060f,Iaa31cec6,I01db140a,I32c80be8,Ib5859604,Ia25fefaf,Ic2a71873

* changes:
  Improve the sample keystone.conf
  Add defaults for ldap options
  Set defaults for sql options
  Set defaults for port options
  Add defaults for driver options
  Use ConfigOpts.find_file() to locate catalog template
  Use ConfigOpts.find_file() to locate policy.json
Invalidate user tokens when password is changed

Fixes bug 996595

This commit will cause all valid tokens to be deleted for a user
who's password is changed (implemented for the sql and kvs backends)

Change-Id: I6ad7da8957b7041983a3fc91d9ba9368667d06ac
Merge "cleanup dependent data upon user/tenant deletion"
Flush tenant membership deletion before user

Ensure user tenant membership is *actually* removed before deleting
user.

Fixes bug 998137.  This should be proposed to stable/essex as well.

Change-Id: I097456e603177646d62ebf08ca71af1fd7f787bf
Merge "Invalidate user tokens when password is changed"
Merge "Flush tenant membership deletion before user"
Added 'NormalizingFilter' middleware.

Fixes bug 956954.

Change-Id: Ib5995a01439e564fcb27682976e8e27c8bb7d0d1
Fix depricated /users/{user-id}/roles

* user-only roles are apparently depricated and not implemented, but
  the AdminRouter is incorrect, resulting in a stack trace rather than
  the expected not-implemented message.  As long as it is in the code,
  it might as well point to the right place...

Change-Id: I923249e44e56e79ab088235a4e87277e6ad65deb
Nail prettytable test dependency at 0.5.0.

Prettytable 0.6.0 has a bad md5sum in PyPi and as such causes tests
to fail when creating a new venv. Nail the version to 0.5.0.

Fixes LP Bug #1000757.

Change-Id: I121ba8d411e47c2fe154370d9c3c941e25331ce6