Add set_provision_state to the client libs

The commit https://review.openstack.org/#/c/61160/ exposes in the Ironic
API a way to trigger the provisioning of a node. This patch add this
functionality on the client libraries (Not exposed on the CLI).

Change-Id: I8c0f339f2c76c153ecba961d0ca411d438c21ceb
Merge "Add set_provision_state to the client libs"
Improve node-validate command output

The Ironic API improved the validation output to return the reason why an
interface failed to validate[1], this patch makes the necessary changes
to the client to reflect that change.

[1] https://review.openstack.org/#/c/63477/

Change-Id: I6e5cca0965febcbec9895d236ca7aee18fbca7db
Drop python2.5 suport in ironicclient.common.http

json and ssl modules were added in python 2.6 (see [1] [2]), so we should
suppose, that these module always available in python standard library.

[1] http://docs.python.org/2/library/ssl.html
[2] http://docs.python.org/2/library/json.html

Change-Id: I37d0cf7240180b0c2dbed26cfd9b264952ab822e
Run unittest with python 3.3

Synchronized common gettextutils module from oslo due
to get possibility to run tests in py33 tox environment

Change-Id: I5970ce41edeab3fe5ec3fecf606f5f5d2a54a7b0
Sync apiclient and strutils from Oslo

Because of clients unification, we should reuse common
functionality from Oslo. This patch is aimed only to import classes
to the project, all the integration work will be done in a separate
patch.

Implements: blueprint common-client-library-2
Change-Id: I003b89ccc741af9933c045506c6d092b8982f8db
Reuse Resource from oslo

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

Related to blueprint common-client-library-2

Change-Id: Ide0bb6bcef845d5cf746d71eaed38d425403e17a
Merge "Drop python2.5 suport in ironicclient.common.http"
Merge "Run unittest with python 3.3"
Remove unused method 'string_to_bool' from utils

The method 'string_to_bool' in utils is not used.
Furthermore, if we need this method in the future,
we should use 'bool_from_string' from oslo cliutils
to replace it.

partially implements blueprint common-client-library-2

Change-Id: I82af6e358d7082222fe7a09c8f27351189a82fbc
Updated from global requirements

Change-Id: I060f60cb9d10f5406a70f2210018eb3814313c07
Merge "Sync apiclient and strutils from Oslo"
Merge "Reuse Resource from oslo"
Fix node-create help requiring chassis uuid

Nodes can be created without specifying a chassis. Help
documentation indicates that a chassis uuid is required.

'UUID of the chassis that this node belongs to [REQUIRED]'

Change-Id: I664b49cfe2e28ac2d74f94b146f7f6409cdb4acd
Closes-Bug: #1273632
Add node.states() to the client library

The node.states() does issue GET request at /nodes/<uuid>/states to get
the current states of that node.

Change-Id: I9e93447df53a0ba1e0f723e95af80fb126218626
Remove tox locale overrides

* tox.ini: The LANG, LANGUAGE and LC_ALL environment overrides were
introduced originally during the testr migration in an attempt to be
conservative about the possibility that locale settings in the
calling environment could cause consistency problems for test runs.
In actuality, this should be unnecessary and any place where it does
cause issues ought to be considered an actual bug. Also, having
these in the configuration actively causes older pip to have
problems with non-ASCII content in some package metadata files under
Python 3, so drop it now.

Change-Id: Id761060cd974772749a82c42217647428e631324
Closes-Bug: #1277495
Fix Iterface misspelling from node-validate cmd

The result from a node-validate cmd includes a table with
'Iterface' as one of the headings. This changes it to 'Interface'.

Change-Id: Iac28d3c65f56ee6cd77f4611db0e513b1b9b008b
Return node_uuid from a port-show cmd

A port-show command returned these fields: address, created_at, extra,
updated_at, and uuid. The node_uuid associated with the port is also
returned with this change.

Change-Id: If345406d5a00bed7e5acfaa6e710f3cdb39b07ac
Closes-Bug: #1279552
Merge "Remove tox locale overrides"
Node power state is not printed after set

As of commit 4676d823a8a35 to Ironic, the API for changing Node power
state no longer returns a body. With no return body, there is nothing
to print in the CLI after requesting the power state change.

This patch removes the print-out of an empty table when the CLI
set-node-power-state command is issued.

Change-Id: If1fb035bdf83e36e3a6a13e639efadc370c40887
Related-bug: #1270160