lp:~eday/nova/lp660668

Created by Eric Day and last modified
Get this branch:
bzr branch lp:~eday/nova/lp660668
Only Eric Day can upload to this branch. If you are Eric Day please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Eric Day
Project:
OpenStack Compute (nova)
Status:
Merged

Recent revisions

354. By Eric Day

Added test case to reproduce bug #660668 and provided a fix by using the user_id from the auth layer instead of the username header.

353. By Eric Day

Fix for bug#660818, allows tests to pass since delete expects a resource ID.

352. By Vish Ishaya

This branch modifies the fixes all of the deprecation warnings about empty context. It does this by adding the following fixes/features
  * promotes api/context.py to context.py because it is used by the whole system
  * adds more information to the context object
  * passes the context through rpc
  * adds a helper method for promoting to admin context (elevate())
  * modifies most checks to use context.project_id instead of context.project.id to avoid
    trips to the database

This included a lot of merge fixing and backporting from the anso deploy branch so some stuff may be broken. Right now it throws an Exception('die') in addition to the deprecation warning so we get a stack trace and can find any other deprecated calls. This needs some testing, especially of the openstack api.

351. By Jay Pipes

Fixes LP Bug#660095.

350. By Vish Ishaya

Fixes a few concurrency issues with creating volumes and instances. Most importantly it adds retries to a number of the volume shell commands and it adds a unique constraint on export_devices and a safe create so that there aren't multiple copies of export devices in the database.

349. By Michael Gundlach

Fixes bug 660115.

Part of the cause of the confusion that led to this problem is I think that we have 3 different 'user' objects that can be passed to different methods: a simple dict, an auth.User object, and a db.sqlalchemy.models.User object (which maps __getitem__ to getattr for good measure.) When we sweep through and add clear docstrings to every method, explaining their inputs and outputs, I think errors like these will be less likely.

348. By Soren Hansen

Xen support.

347. By Vish Ishaya

Adds flat networking + dhcpserver mode.

346. By Vish Ishaya

This patch removes the ugly network_index that is used by VlanManager and turns network itself into a pool. It adds support for creating the networks through an api command:
    nova-manage network create # creates all of the networks defined by flags
or
    nova-manage network create 5 # create the first five networks

This moves the network out of project.create, associating a network to a project lazily in project_get_network. This allows for a bit greater control over networks. There are a couple outstanding issues:
   1) Where do networks get disassociated? Right now I'm not disassociating at all. We're sharing ldap users across different deploys, whereas sql db is unique per deploy. Perhaps the solution is to have a flag like disassociate_on_project_destroy and make it optional?
   2) How do we handle creation of networks for tests? It is really slow to create a pool of networks and fixed_ips for each test case. Right now I'm taking advantage of the fact that the db isn't cleaned between tests, and creating them if they don't exist in BaseTestCase.SetUp() and disassociating in TearDown(). Ideally this should be replaced with fixtures of some sort.

Comments on these two issues are welcome.

345. By Michael Gundlach

Revert the conversion to 64-bit ints stored in a PickleType column, because PickleType is incompatible with having a unique constraint.

We moved away from 32 bit ints because of the chance of collision. It turns out the existing code already checked for collisions and retried, so this wasn't an issue.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~hudson-openstack/nova/trunk
This branch contains Public information 
Everyone can see this information.

Subscribers