Rely on OSLO.config

OSLO.config is now used by all the services. The hack in place to
correctly find the right config file is apparently (by way of the
comments) only required for the gate.

Therefore we should be able to remove this.

Change-Id: If5c5d5a4711de21624b2e75e99cc785520ab6aba
Enforce scope mutual exclusion for trusts

We already warn if you try to scope a domain and project together. This
should be extended to trust scoping rather than clobbering the existing
scope.

Change-Id: I9d8fe001b65588b1c21e58f38a47456fdad85ee1
Related-Bug: #1288223
Split sample PKI token generation

Splits the file that generates the sample data into two.
One part is the set of individual functions.  The second
is a script that calls each of the functions in turn.  By
splitting them, it becomes easier to regenerate just a subset
of the sample data.  The use-case that prompted this change
was the need to regenerate the signed tokens based on a different
algorithm.  Without this change, all of thecertificates would
need to be regenerated, and that has nothing to do with the
actual change required.

Change-Id: I53b6cfde98a52f0a59b06ad8abbe0d2f1251f796
Add 'methods' to all v3 test tokens

methods is a required field of v3 tokens but none of the sample tokens
have them. This field is required for determining the difference between
a v2 and a v3 AccessInfo object.

Change-Id: I4d45e90f24eeb2f35451549771ad999628619c20
Use AccessInfo in auth_token middleware

auth_token middleware parses the token and extracts the data manually.
We have this parsing ability in AccessInfo now so we should use that
instead.

Change-Id: I23c6e33d327c3d3669fb977d9623b788324c4785
document that --pass can be required

Closes-Bug: #1286202

Change-Id: I19861b9959723c19671954be5a751fcf06494e8d
Generate module docs

The module docs were not being generated.

Co-Authored-By: David Stanek <dstanek@dstanek.com>

Change-Id: I26e1d9a3d407474eb6b016f3ada4c495b5043460
Closes-Bug: #1278662
Fix doc build errors

There were some parts that had invalid RST in their docstrings
which caused warnings and errors to be generated.

Related-Bug: #1278662
Change-Id: Ibb53e6f49b5fa100fa6ecfe47331f9a70729d03b
Revert "Authenticate via oauth"

This reverts commit 149e1128818aacb24654f990430791562054fa93.

This commit I958983f505e261e3f1920a8df66eced3258b001e broke
stable/havana by introducing a dependency on oauthlib, but oauthlib
isn't in the stable/havana branch of global dependencies (fix in
progress Ib2e2aa2e75e7b7b43e0534eeb62e748d1edc0bc3). And we use trunk
clients in stable/havana gate jobs. So this patch broke both heat and
horizon, both of which import this file to support keystone's v3 API.

Change-Id: I56f7a8d2d2ddce0565f29bf29628555e4fe3c761
Revert "Add request/access token and consumer..."

This reverts commit 2e7bdb872e9660178451f71b35976a980f047300.

This commit I9137e3426c82c73855ae0e50317cfd6477195318 is the second
patch that broke stable/havana by introducing a dependency on oauthlib,
but oauthlib isn't in the stable/havana branch of global dependencies
(fix in progress Ib2e2aa2e75e7b7b43e0534eeb62e748d1edc0bc3). And we use
trunk clients in stable/havana gate jobs. So this patch broke both heat
and horizon, both of which import this file to support keystone's v3 API.

This is the final patch in reverting bp add-oauth-support.

Commit subject was (but exceeds maximum pep8 subject length):
Revert "Add request/access token and consumer support for keystoneclient"

Fixes-Bug: #1292797

Change-Id: Ib45fb39b01ddcf5c8fc0179811efded84c0cb908
Merge "document that --pass can be required"
Merge "Generate module docs"
Merge "Fix doc build errors"
Merge "Rely on OSLO.config"
Discover should support other services

Most services don't provide a 'values' element for their version
definitions, however are otherwise similar. Discovery should allow that
case and continue on otherwise.

Change-Id: I878377a779da5c96c47603842c024059920423fd
Docs link to middlewarearchitecture

There was no link to the middleware architecture from the main
page so nobody would know that it's there. This adds the link.

Change-Id: I2cd7a458b48d2c2889e4305e01bc013796a67c6e
Reference docstring for auth_token fields

The documented variables that the auth_token middleware sets for
the request was out of date with the code. Rather than maintain
the documentation for the fields in 2 places we'll now link to the
auth_token module docs.

Change-Id: Id4ca1843f749c1ed0b515c8860764add3ec4a3da
Don't use a connection pool unless provided

To prevent left over TCP connections from keystoneclient not correctly
cleaning up we shouldn't use a connection pool. This is not ideal but it
was a relatively new addition so shouldn't affect performance.

When we are able to find a long term solution to keystoneclient's other
problems we can move back to using a connection pool.

Change-Id: I45678ef89b88eea90ea04de1e3170f584b51fd8f
Closes-Bug: #1282089
use v3 api to get certificates

Let Token signing and ca certificates can be accessible at
/v3/OS-SIMPLE-CERT/{ca,certificates}.

Change-Id: I6c82d1f78ba1ff2ab110474623982542610b4d2d
Closes-Bug: #1206345
add pooling for cache references

Change-Id: Iffb1d1bff5dc4437544a5aefef3bca0e5b17cc81
Closes-Bug: 1289074