remove $KEYSTONE_TOKEN_HASH_ALGORITHM

Now that Keystone is back to UUID token defaults the use case for this
in devstack is extremely dubious, and it can be set through via
local.conf if anyone *really* cares.

Part of bp:devstack-nounset

Change-Id: I644b5b1579952959d253758b2a12b97d8a704657
Fix rabbitmq retry for error checking

I think this retry check has been broken since we introduced "set -e".
Unfortunately it seems the issue of rabbitmq not starting first-time
persists on centos 7 hosts occasionally, e.g. [1]:

---
 + rabbit_setuser stackrabbit secretrabbit
 + local user=stackrabbit pass=secretrabbit found= out=
 ++ sudo rabbitmqctl list_users
 Error: unable to connect to node 'rabbit@devstack-centos7-rax-iad-100675': nodedown

 DIAGNOSTICS
 ===========

 nodes in question: ['rabbit@devstack-centos7-rax-iad-100675']

 hosts, their running nodes and ports:
 - devstack-centos7-rax-iad-100675: [{rabbitmqctl29293,39511}]

 current node details:
 - node name: 'rabbitmqctl29293@devstack-centos7-rax-iad-100675'
 - home dir: /var/lib/rabbitmq
 - cookie hash: KieJnx1pnllKbHVihGcDqA==
---

Fix up this retry while we investigate [2]

[1] http://logs.openstack.org/64/141864/1/check//check-tempest-dsvm-centos7/4308f0c/logs/devstacklog.txt.gz
[2] https://bugzilla.redhat.com/show_bug.cgi?id=1144100

Change-Id: I11fb3728e08adc1e0f7acca63e5a308d24dce78e
Add WSGIPassAuthorization to the admin port too

Accidentally only added WSGIPassAuthorization to the public port,
like all the other WSGI props, it should be added for both ports.

Change-Id: I4e52e0881df464dfb7b28e22581f462e14e37bdb
Fix rabbit_userid for multi node devstack

I43a231c9611b4cc2e390b603aa3bfb49c915bdc5 introduced a new setting
RABBIT_USERID but only set it if rabbit is enabled. In multi node
devstack the second node uses RABBIT_USERID but the service rabbit isn't
enabled on it.

Always set RABBIT_USERID, if a different message queue is used the
variable will just be ignored.

Change-Id: I8568bddda2a5c66235ecae23af58983ee94c720a
lib/swift : fix misleading typo in a code comment

The code comment was picked from lib/keystone but not changed.

Change-Id: Idebe5af84d481d52d529575e666105e4b0e06a59
Don't install sphinx from distro

We don't generate docs in devstack. But also, sphinx depends on babel
which has a hard depend that breaks with setuptools 8. However, pip
installed babel/sphinx should not have this problem.

Change-Id: I84a82e56f6540724d50c6201a68c480ba7645add
Merge "Fix rabbitmq retry for error checking"
Merge "lib/swift : fix misleading typo in a code comment"
Merge "remove $KEYSTONE_TOKEN_HASH_ALGORITHM"
Merge "Don't install sphinx from distro"
Merge "Add WSGIPassAuthorization to the admin port too"
Merge "Fix rabbit_userid for multi node devstack"
Revert "Pin version of setuptools"

This reverts commit 3b782d304ec2073a6406c37b9e1a76c8aecfc9a3.

The blockers for setuptools 8 compatibility should all be resolved
now.

Change-Id: I6d2d63746f98f0f885816395f36022a2706fb9c5
Merge "Revert "Pin version of setuptools""
Add virtual env builder

tools/build_venv.sh:
* Install required system packages (python dev, virtualenv)
* Create a virtualenv, including the contents of files/venv-requirements.txt
* Install common packages that have system dependencies

Other changes to DevStack:
* Add USE_VENV and VENV_PATH to screenrc
* Create venv early in the stack.sh run
* Change pip_install to not use sudo if it detects a virutal env is
  present ($VIRTUAL_ENV is set)
* Return the venv path in get_python_exec_prefix() when a venv is active
* pip_install() does not need to be root when a venv is active
* nova-rootwrap needed some PATH help in sudo

Change-Id: I616f405c15086820d8e158c2b046af8f417049f4
Fix wsgi dir cleanup in Keystone

Change-Id: I8350d2de8602472e5a7d80b490d2c24f43865e19
Merge branch 'screen-logdir' into dt-test
Merge branch 'clean-wsgi' into dt-test
Merge branch 'venv' into dt-test