Use flake8 in run_tests.sh and updated ignore flake8 rules with tox.ini

Change-Id: I9ec82e4ddbaa8c9f256ff962c48dfb556948b32d
Fixes: bug #1180609
python3: Add basic compatibility support

Use six.iteritems to replace dictionary.iteritems() on python2 or
dictionary.items() on python3.

Change-Id: I623009200f3a90985a2c0178673df7d54b36a686
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Fix a typo in fetch_revocation_list

Change-Id: Ida17b6246e6c8dc5ca9c170bd2694e4ff1f24381
Don't cache tokens as invalid on network errors

Closes-Bug: 1172802
Change-Id: Ifc04f565b96d58a7a2f477a216b57af7f8de6a8e
Rename client.py to httpclient.py

The discoverable entry point is to be client.Client however adding this
functionality to the current client.py is impossible as we end up with
circular dependencies.

This patch simply renames the current client.py to httpclient.py to make
future patches that will modify client.py more readable.

Required for: blueprint api-version-discovery

Change-Id: Ibcea03f6e1df0ae05329297166a8b8117fc3ce7b
Extract basic request call

Create a function out of the standard request call that handles common
headers like user agent and logging.
This makes future changes easier to digest.

Change-Id: Ia25f997df64efdce27c8fb815e544922940145c3
Add a get_data function to Service Catalog

Service catalog takes as a parameter the entire token. This makes it
difficult to extract only the service catalog component without querying
the catalog version, which should be unnecessary.

Change-Id: I3ad428fcb3279e8aa607f67f58265a085ae63440
Merge "Use flake8 in run_tests.sh and updated ignore flake8 rules with tox.ini"
Adds support for passing extra tenant attributes to keystone

Patch adds simple kwargs parsing to tenant update and create
methods allowing users to exercise the extras functionality
of keystone.

As-per keystone data model docs:
http://docs.openstack.org/developer/keystone/architecture.html#data-model

Change-Id: I1c375c70a0ab4519626d2238d65fa0695f953dc5
Fixes: bug #1180317
flake8: enable H201, H202, H802

Change-Id: I845720fd642c14fc021bd59809327eee97d43156
Merge "Rename client.py to httpclient.py"
Fixes files with wrong bitmode

Some modules have bitmode 755. Changed to 644

Change-Id: If8e64c0d27f4d114a4012a4ff34ff08acfec9f06
Refactor verify signing dir logic

Add a function AuthProtocol::verify_signing_dir() in
keystoneclient/middleware/auth_token.py. It will be called both in init
stage and in fetching signing cert scenario.

Fixes bug 1201577

Change-Id: Ice0e8a93ba9d85c20de84cf8da3e9b0f2274b740
Merge "python3: Add basic compatibility support"
Merge "Extract basic request call"
Merge "Add a get_data function to Service Catalog"
Merge "Refactor verify signing dir logic"
Merge "Fixes files with wrong bitmode"
Merge "Don't cache tokens as invalid on network errors"
Move all opens in auth_token to be in context

This commit switches the use of open() to be in a with context. This
will prevent leaking file descriptors because using a context
provides an inherent close(). Prior to this commit it was possible
that an exception or error during the write() call could prevent
close() from running.

Change-Id: Ib13fe651d41f0eafea23a1c96c6c64d405de7e49