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 read_only field attribute

Some fields of an object are created by the database automatically
like 'id' in service object, thus should not be changed in general.

Add a read_only field attribute to specify such situation, which
can only be set once and can't be changed any more.

Change-Id: I25ba81ed7ec0d16782a59851944a14792d4c84ce
Add development policies section to devref

We now have a whole bunch of unwritten development policies about what is
allowed and what isn't, it is time to write some of them down.

A subsequent patch will add the first policy.

Change-Id: I91c2eb2b937f38b3b3c5380ac93fa0ce0f5e4156
Add out of tree support dev policy

Record what our policy is around supporting out of tree code.

Change-Id: I718ef7f0b6c29a85be89292d051f07b4cdd32676
Simplify filter_scheduler.populate_retry()

This is the exactly what dict.setdefault() is useful for.

Change-Id: I356af8f87b84fb23383c06080b8fd373054b5949
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
websocketproxy: remove leftover debug output

Someone reported the following very long entry in their
/var/log/messages:

  Jun  6 15:00:16 gprfc041 nova-novncproxy: }}>>{<{<}>{<{<}> [...]

It turns out that this is from some debug code left in this module.
Just drop it.

Change-Id: I392f599e81790376dab11f9323430ee9abcff444
Merge "Add development policies section to devref"
Merge "Add out of tree support dev policy"
Merge "websocketproxy: remove leftover debug output"
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