diff options
| author | Sam Morrison <sorrison@gmail.com> | 2013-05-07 12:07:53 +1000 |
|---|---|---|
| committer | Sam Morrison <sorrison@gmail.com> | 2013-05-22 16:37:34 +1000 |
| commit | 6682d1617e7085c8f956ff6b23ea6932ec986a3e (patch) | |
| tree | 7bb7f3be12652fb46a13a7f30f9e31c7e31440f5 | |
| parent | 70638961bca3b479124910522f21ff12e55fbadd (diff) | |
| download | nova-6682d1617e7085c8f956ff6b23ea6932ec986a3e.tar.gz nova-6682d1617e7085c8f956ff6b23ea6932ec986a3e.tar.xz nova-6682d1617e7085c8f956ff6b23ea6932ec986a3e.zip | |
Adds live migration support to cells API
Fixes bug 1153087
DocImpact: Cells now allows live migration within a cell,
but not between cells.
Change-Id: Ic8777c376883eaf6ff9cb4b379e0bacbfe5635b7
| -rw-r--r-- | nova/compute/cells_api.py | 10 | ||||
| -rw-r--r-- | nova/tests/compute/test_compute_cells.py | 3 |
2 files changed, 10 insertions, 3 deletions
diff --git a/nova/compute/cells_api.py b/nova/compute/cells_api.py index 7168313ec..4beeaeb3d 100644 --- a/nova/compute/cells_api.py +++ b/nova/compute/cells_api.py @@ -559,6 +559,16 @@ class ComputeCellsAPI(compute_api.API): pass return rv + @validate_cell + def live_migrate(self, context, instance, block_migration, + disk_over_commit, host_name): + """Migrate a server lively to a new host.""" + super(ComputeCellsAPI, self).live_migrate(context, + instance, block_migration, disk_over_commit, host_name) + + self._cast_to_cells(context, instance, 'live_migrate', + block_migration, disk_over_commit, host_name) + class HostAPI(compute_api.HostAPI): """HostAPI() class for cells. diff --git a/nova/tests/compute/test_compute_cells.py b/nova/tests/compute/test_compute_cells.py index 40ae4e3de..ad4e6c754 100644 --- a/nova/tests/compute/test_compute_cells.py +++ b/nova/tests/compute/test_compute_cells.py @@ -145,9 +145,6 @@ class CellsComputeAPITestCase(test_compute.ComputeAPITestCase): def test_instance_metadata(self): self.skipTest("Test is incompatible with cells.") - def test_live_migrate(self): - self.skipTest("Test is incompatible with cells.") - def test_snapshot_given_image_uuid(self): self.skipTest("Test doesn't apply to API cell.") |
