Update HACKING.rst to include N320

Commit 9235ada8c2c250603dc5b299cc08bb7a982d4fc6 did not add in
the updated hacking rule.

Change-Id: If2daf6d2e7008c36d0aba6270ac034522dcb2e2b
Closes-bug: #1325812
Add missing translation support

Update a number of files to add missing translation support.

The patch adds a new hacking check - N321. This ensures that
all log messages, except debug ones, have translations.

A '# noqa' indicates that the validation will not be done on
the specific log message. This should be used in cases where
the translations do not need to be done, for example, the log
message is logging raw data.

Closes-bug: #1290261
Change-Id: Ib2ca0bfaaf432e15448c96619682c2cfd073fbbc
Fix direct use of block_device module objects

This replaces all uses of nova.objects.block_device.Block* with
nova.objects.Block*.

Partial-Blueprint: object-subclassing

Change-Id: I7b7641cc75bbc180abd36920deedcb097fc3ecbc
Add test to verify ironic api contracts

Since the ironic nova driver is out-of-tree, changes in nova can
cause chaos and destruction if ironic is not considered. This adds
a unit test to attempt to warn/notify developers of the dependencies.

Change-Id: Ic9be8e98975684972f944d3ec335b1c3af87cc10
Cleanup allocating networks when InstanceNotFound is raised

Allocated networks were not being cleaned up if InstanceNotFound was
raised after the allocation request was made.  This ensures that the
cleanup happens for this case.

Also bypasses exception logging that should not occur in this case.

Change-Id: Icd544752444415812714d91971e45b3ae2fb68ee
Closes-Bug: 1324934
Revert "Remove quota-class logic from context and make unit tests pass"

This reverts commit e25316ecb9c879cd1fe2de0c8a4c4d5a424324ab.

The quota_classes API was used to set default quota values
so it shouldn't have been removed, so reverting a series
of changes that removed the API and it's internal code.

Related mailing list thread on the topic:

http://lists.openstack.org/pipermail/openstack-dev/2014-May/035383.html

Partial-Bug: #1299517

Change-Id: If903863d28fbab74cfe571709a01cd2cdd46d174
Revert "Remove broken quota-classes API"

This reverts commit 7d22153d05c67bb0bf4838efdb17b3360ec2e367.

The quota_classes API was used to set default quota values
so it shouldn't have been removed, so reverting a series
of changes that removed the API and it's internal code.

Related mailing list thread on the topic:

http://lists.openstack.org/pipermail/openstack-dev/2014-May/035383.html

Partial-Bug: #1299517

Conflicts:
	doc/api_samples/all_extensions/extensions-get-resp.json
	doc/api_samples/all_extensions/extensions-get-resp.xml
	nova/tests/integrated/api_samples/all_extensions/extensions-get-resp.xml.tpl

The conflicts are due to Mark McLoughlin's timestamp-format series
of changes on master (Juno).

Also note that quota_classes.py was changed due to
commit c75a15a4 to rename the NotAuthorized exception
to Forbidden.

Change-Id: I7890e6b41d4ebf19944c1d4db65111fcc4c45463
Merge "Add test to verify ironic api contracts"
Merge "Cleanup allocating networks when InstanceNotFound is raised"
Merge "Update HACKING.rst to include N320"
Merge "Add missing translation support"
Handle string types for InstanceActionEvent exc_tb serialization

Commit 59a6cf233b538d6666740de4796fce25ed8265aa added code to handle
serializing non-str exception traceback objects, but didn't account for
unicode.  This change uses six.string_types to handle str and unicode
objects for the exc_tb argument.

Adds a new unit test for the unicode case and firms up two existing
tests for how traceback.format_tb is mocked (or shouldn't be in the case
of exc_tb being a str).

Closes-Bug: #1327476

Change-Id: Icc10b62a3f65610c50e86c0b366c2b70b1a0932d
Merge "Fix direct use of block_device module objects"
Merge "Revert "Remove quota-class logic from context and make unit tests pass""
Merge "Revert "Remove broken quota-classes API""
Merge "Handle string types for InstanceActionEvent exc_tb serialization"