Move to use "get_password" instead of "{user,service,db}_password"

The user_password, service_password and db_password functions are
redundant
since they simply call "secret". Creates a get_password function that
will accept a "type" of db, service or user.

All instances of these calls have been changed to call get_password.

Change-Id: I6879cac6731cc167592820caa811c2cc30660af0
Partial-Bug: #1195915
Rubocop support for providers/*.rb

* Using single .rubocop.yml

Addresses: blueprint rubocop-for-identity
Change-Id: Ie0f56e57d47a1953011657aef741ba9c5f13c37f
Rubocop support for spec/*.rb

Change-Id: Id86d34888632a23f58faa91a5c81b52bc2fc4981
Addresses: blueprint rubocop-for-identity
Remove Berksfile.lock from dev branches

blueprint remove-berksfile-lock-from-dev-branches

Change-Id: I9b9e4661c444d9d838639be3132365f4f0d1cb50
Merge "Rubocop support for spec/*.rb"
Rubocop support for recipes/*.rb

Change-Id: Ic6b09f84fbecefbb33404d64f25eca4e38e17bed
Addresses: blueprint rubocop-for-identity
Rubocop last pass on spec/**.rb

Change-Id: Ic917b206da6057e0cffd1e5d8167ce613faab79d
Implements: blueprint rubocop-for-identity
Merge "Rubocop support for recipes/*.rb"
Remove ambiguity in stubbed methods in spec_helper

- Adjust the stubs in spec/spec_helper.rb to specify the appropriate
  number of expected variables.
- Add parenthensis around return values

Partial-Bug: #1271535
Change-Id: I11ea6503c37d60f555c52d80b68ee39e1ed95748
keystone-manage to be run by keystone user/group

keystone-manage pki_setup and keystone-manage db_sync should be run by
the designated keystone user and group. The reason being that these
commands when run as root (as is the case with chef) may drop a
keystone.log file. If this is the first pass, that file will be owned
by root and subsequent writes to that file by the proper keystone user
or group will likely fail.

This change also removes a redundant test for opensuse.

Change-Id: I627674b319738f9c79ff146ddfdf979db55b2c14
There is no need to bash boostrap keystone

With the introduction of the keystone LWRP back in the Grizzly days,
this fragile bootstrap routine was made obsolete. The LWRP already
makes use of the bootstrap token to create various new users by way
of the registration recipe and/or a custom recipe defined by the user
which declares keystone LWRP resources.

Also, this is Chef, not bash.

Change-Id: Iac688e28a17c1ec0eb3a57da5f9a0f54b66e503d
Merge "There is no need to bash boostrap keystone"
Merge "keystone-manage to be run by keystone user/group"
Clean up cookbook for bp/clean-up-attr-for-mq-and-db

This change removes the attributes we'll be moving to openstack-common
and changes reference of those attributes to reflect new (more
consistent) namespace.

Change-Id: Idbe0830bbf304471a4f221b136093e2a84f22d0b
Implements: blueprint clean-up-attr-for-mq-and-db
refactor specs to improve speed and maintenance

use of `let()', shared_context, and removal of instance vars, etc.

Change-Id: Ie598d312d1a2d79db43793dd90b346618a6804f5
Implements: blueprint refactor-spec-files
Update keystone.conf to use new provider config

This change uses the [token] provider configuration rather than
the deprecated [signing] token_format to select between PKI and UUID
tokens.

Closes-Bug: #1273946
Change-Id: Ia03c2375326c14d4783df3c0774599c795b25cf2
Upgrade/Update rubocop

Now that almost all of the rubocop blueprints have been completed, make
one final pass through all of the cookbooks ensuring they're all in
sync with each other.

- Upgrade rubocop to 0.18.1
- Make the rubocop.yml the same as others plus the exception at the bottom

Change-Id: I030322516fcdb1d742d7d4170c1f4436e8115852
Implements: blueprint lint-and-unit-testing-for-havana
Merge "Upgrade/Update rubocop"
Fix 'Avoid rescuing the Exception class.' warnings

Rubocop warns about doing a rescue on Exception:
"Avoid rescuing the Exception class. This will trap signals
and calls to exit, requiring you to kill -9the process."

According to the style guide, we should be catching StandardError
instead, which doesn't trap exit signals. This patch addresses that
issue.

Change-Id: I6cf3e6b5cecfdc4d412789d75e1af9e6d53c6e8d
refactor keystone.conf template specs

add tests for every tunable.  organize code layout to reflect actual
template layout (group tests, in order).  also 3x performance gain by
collapsing 50+ chef converges into one.  remove 'pending' tests in
other platforms since there are no platform-specific tunables.

Change-Id: Ib0dc3728a5b0c81bf3b3a36a1a644a7a2fff5910
Closes-Bug: #1182562