Remove prov_vlan_id from baremetal

In nova, this parameter is not used
(and will be unacceptable soon)

Change-Id: I072a204bef49940fb2ddc8dc44480b570bc3212c
Decodes input and encodes output

Currently novaclient doesn't handle properly incoming and outgoing
encode / decode process. As a solution for this, this patch implements a
decoding process for all data incoming from the user side and decodes
everything going out of the client, i.e: http requests, prints, etc.

This patch introduces a new module (strutils.py) taken from
oslo-incubator in order to use 2 of the functions present in it:

About safe_(decode|encode):

    Both functions try to encode / decode the incoming text using the
    stdin encoding, fallback to python's default encoding if that
    returns None or to UTF-8 as the last option.

    In both functions only basestring objects are accepted and they both
    raise TypeError if an object of another type is passed.

About the general novaclient changes:

    In order to better support non-ASCII characters, it is a good
    practice to use unicode interanlly and encode everything that has to
    go out. This patch aims to do that and introduces this behaviour in
    the client.

Testing:

    A good test (besides using tox) is to use nova client with and
    without setting any locale (export LANG=).

Fixes bug: 1061156

Change-Id: I20b75e42b0c3dac89f1048faa1127253a64f86c7
Extend test coverage for v1_1/shell.py

Added unit tests for shell code, that wasn't covered before.

Implements: blueprint python-novaclient-unittests
Change-Id: Id9973b1edb39ab76e7a232c262ae073cf44dfc0a
Fix typo in error message

Change-Id: Ia37ec318329dc527b30a1835e4a52ace14b2bda3
Fix nova boot --num-instances option checking

'args.num_instances' should be checked by None because of '0 == False'.
This patch fixes the checking.

Fixes bug 1151787

Change-Id: Iede860caa5c2d03d49471f375d687c3e40102372
Merge "Fix typo in error message"
Check if tenant flag is uuid_like for all quota operations

Fix bug 1145706

Change-Id: I9089ea4f968797b248f80bf84027a602e59ccd00
Add wrap option to nova credentials for humans

When using Keystone PKI, a token ID can be over 3200 chars long.
Add optional --wrap option to make 'keystone token-get' human readable
By default wrap=64 (to fit in 80 char terminal).  And can be turned off by
setting wrap=0

Fix bug 1131001

Change-Id: I50be7ebb4323ab1bf07af557403f5136b49080a4
Additional "Unify Manager._update behaviour" cleanup

Make _update always return an instance of self.resource_class.

This is in preparation for fixing bug 1145768 by reverting the API
changes made in the original "Unify Manager._update behaviour" change.

This is to avoid needing to revert some of the cleanup that was made
in that change.

Change-Id: I842bda40a0dc168689a7dd8b88433c3cebef5839
Merge "Remove prov_vlan_id from baremetal"
Merge "Additional "Unify Manager._update behaviour" cleanup"
Merge "Extend test coverage for v1_1/shell.py"
Merge "Decodes input and encodes output"
Merge "Add wrap option to nova credentials for humans"
Merge "Check if tenant flag is uuid_like for all quota operations"
Show Tenant_ID for secgroup-list with all-tenant

For the secgroup-list command, append the Tenant_ID
column if the --all-tenants flag is used.

Fixes bug #1118477

Change-Id: If2ff108cb0aec1327ceecc47a8c5ed9a08678e51
Use keyring for testing

Mention keyring in test-requires as in python-keystoneclient.
So, keyring support is enabled in shell.py and tested.

Change-Id: Icb712a07b995b47b286ed0528e04ae1d5ec195d2
Revert API changes in "Unify Manager._update behaviour"

This revert some of commit 63073104665ee4597cf3b7aa8dc2295a8a7db794,
specifically the changes made to the API since those changes were
never merged in Nova.

Resolves bug 1145768.

Change-Id: I8f83c5a33cfed0c3a659f5221b8b2e730ca9463f
Make os-services API extensions consistent with Nova

Updates the os-services API extensions to match the Nova changes
proposed in I932160d64fdd3aaeb2ed90a092ecc7a36dcc9665.

Resolves bug 1147746.

Change-Id: Ib0f24dea8e937a8e1a1604b1cbf19d96bcdbcd8f
Merge "Revert API changes in "Unify Manager._update behaviour""