Remove usage of module py3kcompat

Module py3kcompat was removed from oslo-incubator. We need remove its
usage in client side firstly. This make us move smoothly when sync
oslo-incubator code.

Change-Id: I8b07c32c9852e747579a23685f3c8a07ac13ec01
Partial-Bug: #1280033
'name' should as be optional param on aggregate-update

'name' should be an optional parameter not required on aggregate-update,
so we can update 'availability_zone' only.

Change-Id: I23e669a3362e0bea44adc88744eed823ec1e7ebb
Closes-Bug: #1280118
Updated from global requirements

Change-Id: I870165ea9be249b1cda937307a32ab29d8270d94
oslo-sync of low hanging fruit

Generated with:
 ./update.sh --base novaclient --config-file
../python-novaclient/openstack-common.conf --dest-dir
../python-novaclient/

Skipped modules: apiclient and cliutils due to oslo issue in apiclient
(cliutils depends on apiclient).
https://review.openstack.org/#/c/76718/

Removed non-existent modules from openstack-commit.conf:
  py3kcompat I06b90f789ae21f2ef8b8071b4298bfc0406482a6
  intall_venv_common I84267f3c6726cb2e750f615e107c48b12c6ed353

Synced patches:
__init__.py [first sync]:
   c178e56 Add basic Python 3 tests
  12bcdb7 Remove vim header
  547ab34 Fix Copyright Headers - Rename LLC to Foundation
  96b9a54 Rajaram/Vinkesh|Added nova's serializaiton classes into common
  c85e1f7 Initial skeleton project

gettextutils:
  6d55e26 Add support for translating log levels separately
  afdbc0a Fix E501 in individual openstack projects
  6b2d15f Merge "Add support for locales missing from babel"
  9d529dd Make Message keep string interpolation args

importutils:
  885828a Deleted duplicated method in cliutils.

strutils:
  bec3a5e Implements SI/IEC unit system conversion to bytes

timeutils:
 d815087 Merge "Fix spelling errors in comments"
 71208fe Fix spelling errors in comments

Change-Id: I8f82acb63e61a64eeb6caba9d2d9c81d9cb766d8
Merge "Remove usage of module py3kcompat"
Revert "'name' should as be optional param on aggregate-update"

This reverts commit a2a1ef8f36644c3487bdaf00b2e70bcc6b948fb4.

Change-Id: I43bdc254e391c4b20254b8732c772fc9e728310c
Reopens-bug: #1280118
Partial-bug: #1281416
Fix in in novaclient, to avoid excessive conns

The current client creates new .Session() on each request,
but since Horizon is a stateless app, each Session creates
new HttpAdapter, which itself has its own connection pool,
and each connection there is used (almost) once and then
is being kept in the pool(with Keep-Alive) for a certain
amount of time(waiting for inactivity timeout). The problem
is that the connection cannot be used anymore from next Django
calls - they create new connection pool with new connections, etc.
This keeps lots of open connections on the server.

Now the client will store an HTTPAdapter for each URL into
a singleton object, and will reuse its connections between
Django calls, but still taking advantage of Sessions during
a single page load(although we do not fully use this).

Note: the default pool behavior is non-blocking, which means
that if the max_pool_size is reached, a new connection will
still be opened, and when released - will be discarded.
It could be useful to add max_pool_size param into settings,
for performance fine-tuning. The default max_pool_size is 10.

Since python-novaclient is also used from non-Django projects,
I'd expect feedback from more people on the impact this change
could have over other projects.

Patch Set 3: Removed explicit connection closing, leaving
connections open in the pool.

Change-Id: Icc9dc2fa2863d0e0e26a86c8180f2e0fbcd1fcff
Closes-Bug: #1247056
oslo sync apiclient and cliutils

Generated with:
 ./update.sh --base novaclient --config-file
../python-novaclient/openstack-common.conf --dest-dir
../python-novaclient/

Synced patches:

apiclient:
  04a1abe Revert "Removed set_loaded() method from Resource class"
  5e76477 Merge "Handle 300 status code in common HTTPClient"
  492fe2c Merge "py3kcompat: remove"
  466ad64 Merge "Fix usage of dict.keys in apiclient.exceptions"
  8630a44 Merge "Removed set_loaded() method from Resource class"
  41fbfea Merge "Add to_dict() method to apiclient Resource"
  6650435 Fix usage of dict.keys in apiclient.exceptions
  35dc1d7 py3kcompat: remove
  9f1e7eb Correct docstring in load_plugin_from_args
  0c4d2c7 Removed set_loaded() method from Resource class
  3b248dd Add to_dict() method to apiclient Resource
  71c22e9 Handle 300 status code in common HTTPClient

cliutils:
  9a7f2f8 Merge "Deleted duplicated method in cliutils."
  8f2effd Use `six.text_type` instead of `str` in cliutils
  885828a Deleted duplicated method in cliutils.
  71a2d90 Add common methods to cliutils

Change-Id: I0c8849d8d5dd71f34aa5dbcd2c0875c164706d70
Merge "Updated from global requirements"
Merge "oslo-sync of low hanging fruit"
Merge "oslo sync apiclient and cliutils"
Merge "Fix in in novaclient, to avoid excessive conns"
Add classifiers for specific versions of Python

These are used by automated tools, such as caniusepython3
(https://github.com/brettcannon/caniusepython3) to check on what
version of Python the Nova client works.

Change-Id: Ie2a652a8c4797b1e1a69c91673e6009f36772667
Merge "Add classifiers for specific versions of Python"
Fix some spelling mistakes

Change-Id: I8da3b73d108b11dc5bb3080215f16486fec95333
Add os-server-external-events support

This adds support for the os-server-external-events extension in nova,
which allows other services to deliver events to nova.

It also adds a shell command to trigger the "network-changed" event
manually, which will cause nova to refresh its network cache from
neutron.

Related to blueprint admin-event-callback-api

Change-Id: I1a302a43b6b7a6d8bdc03965a8f4c1a151bcab88
Merge "Add os-server-external-events support"
Merge "Fix some spelling mistakes"
Removes copy of output of 'nova help' from README

Removes the copy of the otuput of 'nova help' from the README.rst
file. It's out of date and given its not autogenerated is
rather prone to getting out of date again soon anyway. Just leave
the command that people need to run in order to print the help message.

Change-Id: I3cd069838302913bc69cc0ded5d632c7f8c3f408
Nova CLI for server groups

CLI support for blueprint instance-group-api-extension

REST API support:- https://review.openstack.org/#/c/62557/

DocImpact
 - supports create, list, get and delete
 - only V2 is supported

Change-Id: Iaa5a2922b9a0eed9f682b7584c2acf582379b422