Use HTTPClient from common Oslo code

In the process of unification of the clients code we should
reuse common functionality from Oslo.

bp common-client-library-2

Change-Id: I0e027c33ee42b6de032d33269caeea33e7837f40
Updated from global requirements

Change-Id: I38fd12afe0ff6b62b21d7374642a65db0deafdc1
Add endpoint opt into auth_plugin

Endpoint should be present in auth_plugin options to allow
connect to ceilometer through specified endpoint and token

Closes-Bug: #1354507
Change-Id: I0aaafc6f599a67b242ade25efb3e667738bd71fd
Replace assertTrue with assertIsNotNone for check an object

assertTrue(*) means to check whether a boolean value/expression
is true or not. For checking an object is not None, we should use
assertIsNotNone(*), which gives more explicit expression.

Change-Id: Ia4d0dcec81e97fe4774bff4e41a017f00b899ef3
Closes-Bug: #1297156
Merge "Updated from global requirements"
Merge "Replace assertTrue with assertIsNotNone for check an object"
Removed undefined method in install_env.py file

There was a call from install_venv.py file to post_process method
of InstallVenv class, but this method is not defined in this class
as result it was raising an error. Even when this error doesn't
affect dependencies installation, it is not allowing to display user
information.

Change-Id: I39c995adfbb411f21ad7ea222b2392da6946e25b
Closes-Bug: #1275025
Updated from global requirements

Change-Id: Ie52abd0eeab5042606855c4ce668f3b3f11a2d2c
Check if the alarm has time constraints field before displaying

Fixes the bug that broke the alarms CLI if the alarm didn't have
a time constraints field.

Reduces code duplication of alarm printing code, so now all the alarm
printing code is actually tested.

Renames some auxiliary methods for more clarity.

Change-Id: Ib691b4a5a6cf5ae133cd0a5576f90e4d0d189a92
Closes-bug: #1316390
Revamp documentation, add module references

Documentation is modeled after python-novaclient docs.
(http://docs.openstack.org/developer/python-novaclient/)

Built preview for reviewers:
https://nsaje.fedorapeople.org/python-ceilometerclient/

Change-Id: I61e9d6593e4a1aea5cf018081416d4be3a9372ac
Merge "Check if the alarm has time constraints field before displaying"
Verify alarm found before modifying

Current behavior is to retrieve alarm by id and conduct operations on the
object.  If the tenant doesn't own the alarm or isn't admin, the user will
receive the message: 'NoneType' object has no attribute 'to_dict'

Above message doesn't provide any useful diagnostic information and indicates a
programming error since an unexpected None-type is encountered and not handled.

This change verifies the alarm is found before using the object.  If alarm not
found it prints the same message for a not found Alarm as other PUT operations
like alarm-state-set:  Alarm not found: <alarm_id>.

This message is more useful for diagnosis and gets rid of the uncaught
None-type error.

Change-Id: I66abcd4498b24ac7cadcf29fe3ced3fcda08458c
Closes-Bug: #1348387
Merge "Revamp documentation, add module references"
Fix a help string nit for statistics command

Change-Id: I0aee668d9a19da76bb01646c87b3cd17418822e5
keystone discovery fallback support

version discovery and sessions aren't supported by all external
auth systems. this patch adds a fallback when discovery does not
work.

Closes-Bug: #1333961
Change-Id: Ib253c736e37f8dbc50881f9fc691bfdb4ab87d71
Fix sample-create in v2 api calls

A dict embedded in a list is the expected input. In
47934c777c50897b649793e0960eebdaad322c45 the list was lost, this
puts it back.

Note that the _exact_ date of this failure was identified by
existing Rally jobs which started failing in early August. That made
searching the commit logs straightforward.

Change-Id: I37e794de7a23b8ce8e67a086732af5a19f182409
Closes-Bug: #1367867
Updated from global requirements

Change-Id: Ifdb40d061dd7e8e822a84f31d6f6d22e65c0ccfd
Merge "Updated from global requirements"
Merge "Verify alarm found before modifying"
Stop using intersphinx

Remove intersphinx from the docs build as it triggers network calls that
occasionally fail, and we don't really use intersphinx (links other
sphinx documents out on the internet)

This also removes the requirement for internet access during docs build.

This can cause docs jobs to fail if the project errors out on
warnings.

Change-Id: I71e941e2a639641a662a163c682eb86d51de42fb
Related-Bug: #1368910