Generate a Changelog for Nova

Ubuntu uses a tarball to generate packages for Nova and
other openstack projects. This allows the user to find out
what is included in the tarball.

Signed-off-by: Chuck Short <chuck.short@canonical.com>

Change-Id: I0291e19eee1ff2c5fc98b499571b2563841c6076
Fix type of snapshot_id column to match db

 * Migrations create a snaphsot_id column that is an integer, but
   models incorrectly list it as a string.
 * The above issue causes errors in certain situations when trying
   to list instances. It seems to be only certain db configurations
   or versions of sqlalchemy that exhibit the issue.
 * Issue was fixed in trunk as part of a conversion to uuids in
   commit 407e16b863bac1dfbf4e954837009abf9c17f018 so a straight
   backport is not possible
 * Fixes bug 962615

Change-Id: I8e9fc9712c141822890feffee838faf8b41ee4f5
handle updated qemu-img info output

Originally `qemu-img info` always output an (actual path: ...)
even if it was duplicated with that already on the line.

 $ instances=/var/lib/nova/instances/
 $ qemu-img info $instances/instance-00000017/disk | grep 'backing'
 backing file: $instances/_base/24083... (actual path: $the_same)

Whereas after the change referenced at:
https://lists.gnu.org/archive/html/qemu-devel/2012-05/msg01468.html
It suppresses a duplicate (actual path:)

 $ instances=/var/lib/nova/instances/
 $ qemu-img info $instances/instance-00000017/disk | grep 'backing'
 backing file: $instances/_base/24083...

* nova/virt/libvirt/utils.py (get_disk_backing_file):
Avoid an indexError exception when parsing the newer format.
Fixes bug 1000261

Change-Id: Ie2889b6da8a5c93e0e874e7a330529f6e6e71b0b
(cherry picked from commit 0624b7aab0c0fe4869111ad8e302151548d6ba20)
Merge "Generate a Changelog for Nova" into stable/essex
Merge "Fix type of snapshot_id column to match db" into stable/essex
Nail pep8 dependencies to 1.0.1.

Nails the pep8 deps for tox and test-requires to 1.0.1.
Fixes an issues causing pep8 failures due to a new pep8 release.

(cherry picked from commit e3d7d3a)

Change-Id: I30be4909f052c29834afbfddba6007045afa519b
Fix bug 988034 - Quantum Network Manager - not clearing ips

Added a line in nova_ipam_lib.QuantumNovaIPAMLib init
method to ensure we clean up IPs and explanation of whats
going on.

Also, nuked release_fixed_ip as that is not
needed in QuantumManager anymore.

Change-Id: I3971b4d4c464ce68ba9370c9f5d8ca7840e0a72a
Fix Multi_Scheduler to process host capabilities

To fix bug #1000403, make sure that each driver held by the
Multi Scheduler gets called during update_service_capabilities.

Change-Id: If8a942317b9b26dd101c5bcf502aab7296608abd
bug #999953 xenapi driver intermittently fail to detach vbd

ensure that unplug_vbd raises XenAPI.Failure as required by
vbd_unplug_with_retry(session, vbd_ref).

Change-Id: If689da4ebc5d9042f26c765afb02ae611967a66b
Add libvirt get_console_output tests: pty and file

Add two new libvirt tests for the get_console_output:
 - test_get_console_output_pty
 - test_get_console_output_file

Fixes LP Bug #990237.

Change-Id: I308862c131c4c9c9c4accab1822039f8f5a775b4
Report memory correctly on Xen. Fixes bug 997014

/proc/meminfo may show wrong values for the memory when using Xen, so
this correctly computes the memory by querying libvirt.

Change-Id: I188e2d34bcee13954653b93b9b816cf4530b8859
Merge "Add libvirt get_console_output tests: pty and file" into stable/essex
Merge "Report memory correctly on Xen. Fixes bug 997014" into stable/essex
Fix up protocol case handling for security groups.

Fix bug 985184.

When creating security group rules, any case for the protocol was
accepted as input, such as TCP, Tcp, tcp, etc., and was stored in the
database as specified.  However, unless specified as all lowercase, the
code to apply the rules would break and result in some rules not being
applied.

(cherry picked from commit ff06c7c885dc94ed7c828e8cdbb8b5d850a7e654)

Change-Id: If737104f492aacd3688f04d78eb9bc993ffa33fc
Fix bug 1006664: describe non existent ec2 keypair

Change-Id: I92bfd6b51aa31abb06e21893174101da31baffd8
(cherry picked from commit 29baa0ec661c2578ad0aabd138a6b84e5c7a0b40)
Create a utf8 version of the dns_domains table.

The old dns_domains table was encoded in the 'latin1'
charset and has its primary key length set to 512.
This is too long to be a valid pkey in a proper 'utf8' encoded
table and seems to cause a slew of errors like:

1) Dumping a database with mysqldump and trying to import it fails
because this table is latin1 but fkeys to utf8 tables (projects).

2) Trying to alter the old dns_domains table fails with errors
like:
mysql> ALTER TABLE dns_domains DROP PRIMARY KEY;
ERROR 1025 (HY000): Error on rename of './nova/#sql-6cf_855'....

This patch creates an Essex fix that re-creates the dns_domains
table with a shorter 'domain' column which works with the utf8
charset. This database upgrade will run on MySQL databases only
which have a dns_domains table with a domain column length of
VARCHAR(512).

Fixes LP Bug #993663 on Essex.

Change-Id: I97888fbc18ebfc0e25c9ba31160588c9cdf5c448
Only invoke .lower() on non-None protocols

When using source group based security group rules (rather than CIDR
based ones), it's permissible to not set a protocol and port. However,
Nova would always try to convert the protocol to lower case, which would
fail if the protocol wasn't set.

Fixes bug 1010514

Change-Id: I9b1519a52ececd16a497acebfe022508cbe96126
Implements resume_state_on_host_boot for libvirt.

Adds a new virt driver function to help resume guest states
on host boot. This fixes a couple issue with using a reboot
(like we did previously):

 * Using reboot would clear some task states (VERIFY_RESIZE for example)
 * Provides a mechanism for hypervisor specific guest restarts.
   Reboot would not have worked for XenServer for example...
 * Updates libvirt to use a hard reboot (instead of soft)

Fixes LP Bug #985162.

Change-Id: Iaf5aad75ec9b91f44710a18ddaf3a93378573a62
(cherry picked from commit 6548c509f1780a7168f26de6f2045ec7d5768520)
Merge "Fix bug 988034 - Quantum Network Manager - not clearing ips" into stable/essex
Add caching to openstack.common.cfg

Speedup of 'nova list' benchmark by up to 40%, eliminates 3 lines in
top-10 cProfile methods.

(includes subsequent refactoring by Mark McLoughlin)

(cherry picked from commits 0d33dc3, 288939b and acf14ff)

Change-Id: I2d4636f94d88b4a7e38d1565fdd4d1b8a89e560e