Removes use of timeutils.set_time_override

The set_time_override function in timeutils was written as a
helper function to mock utcnow for unittests before 'mock' was
generally used. Now that we have mock and fixture, we no longer
need to use it.

Change-Id: Ibcf6d4abee4a52bc459fc322e6a5268d39d70450
Partial-Bug: #1266962
Sync Oslo service module to Ironic

New Oslo service code does correct stop Ironic conductor service from
screen session on devstack (screen -S stack -p ir-cond -X kill),
otherwise multiple conductors started on devstack after few
unstack/rejoin-stack cycles.

Change-Id: Ia8b4523e1288ca0817b94f85070f78237908a410
NodeLocked returns 503 error status

The NodeLocked exception status code was incorrectly set to 409
CONFLICT.  That status is (correctly) used by client-side errors, such
as MACAlreadyExists and InvalidState, which belong in the 4xx class of
HTTP error codes.

Instead, NodeLocked is a temporary server-side error and as such should
use the 503 error code, indicating that the client should re-issue the
request unchanged after waiting for the resource state to change on the
server side.

Change-Id: I00c6bac32ac7db068f49633a576422f9ca93cfef
Sync Oslo gettextutils  module to Ironic

Our ironic oslo gettextutils code is out of date, need to be updated.

Change-Id: I03d01f7ee6d710ad061f27fef0959b1c4d423408
Implements: blueprint i18n-messages
Remove shebang lines from code

Need remove shebang lines like:
   #!/usr/bin/env python
from code

Change-Id: Id11cfcb9836a4908b96012f7bf413bc077a04a33
Partial-Bug: #1281055
Improve help strings

Better follow oslo.config style guide for consistent help strings:
* Capitalize help strings
* End help strings with "."
* Improve wording and capitalization.

Change-Id: Ib647bd85e636b16f1d1a040bb9ba04cd319a8826
Simplify locking around acquiring Node resources

task_manager.TaskManager and resource_manager.NodeManager were both
locking resources, but in different ways.

TaskManager used a DB-backed lock to guarantee cross-host exclusivity of
non-shared locks, even in the face of a conductor going offline.

NodeManager used lockutils.synchronized to guard creation of
instances of itself. For each node id, this class acted like a
singleton. Additionally, it kept references back to each TaskManager
which had acquired either shared or exlusive access to that Node. This
back-reference (and the related garbage collection) was not necessary
because most access was done within an exclusive lock context, and
therefor the benefit of resource caching was never realized.

This patch replaces NodeManager with a simple NodeResource class.  It is
now just a container to store and easily access objects associated with
a node, namely the node's port(s) and the node's driver object.

This patch also moves the driver loading out from NodeManager and into
TaskManager. As a result of this, significant refactoring of the unit
tests had to be done to mock the extension loading in a different way.

This patch updates the unit tests and module documentation accordingly.

Change-Id: Ic6fc1e198cd4979d3c4746db821ae959f42f4678
Do not use CONF as a default parameter value

In the HashRing.__init__() the "replicas" parameter defaults to
CONF.hash_distribution_replicas, the problem with this approach is
that Ironic might not have loaded the configuration at the time this
configuration is evaluated in the function definition. This patch fix
the problem by using a placeholder value instead of the configuration
option in the function definition.

Partial-Bug: #1279774
Change-Id: I5d8d7cd18a8a6b050f3aa448a337e0156e67ced5
Merge "Do not use CONF as a default parameter value"
Merge "Sync Oslo service module to Ironic"
Merge "Removes use of timeutils.set_time_override"
Merge "Improve help strings"
Sync common config module from Oslo

List of changes

1a6dfb9 Sanitize FQDN in config generator
e839886 Config generator fails with lazy messages
763eedf Fix DictOpt support in config sample generator
e3dddd7 generator: use EXTRA_* env vars in the bash script
e8e636c generator: add an EXTRA_LIBRARIES env variable
5dce17b Use entry points to discover options in libraries
dd9aa2b Remove unused variables
ad17a69 Fix filter() usage due to python 3 compability
7c18261 Temporary workaround for config generator
4b3e32b Sort the output of config/generator.py by group name
12bcdb7 Remove vim header
806272e Improve error reporting on import failures
6cd1c33 Clean up extra modules code

Updated ironic.conf.sample using new config generator.

Closes-Bug: #1282481
Change-Id: Ice3e527589bbf0e881d21f55229264513ea445d2
Merge "Sync Oslo gettextutils  module to Ironic"
Merge "Sync common config module from Oslo"
Merge "Remove shebang lines from code"
Merge "NodeLocked returns 503 error status"