author | Laszlo Peter <laszlo.peter@oracle.com> |
Wed, 07 Sep 2016 14:48:42 -0700 | |
changeset 6854 | 52081f923019 |
permissions | -rw-r--r-- |
6854
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
1 |
This in-house patch adds a subclass to LiveMigrateData to support |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
2 |
Solaris kernel zone live migration. It will be proposed to the upstream |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
3 |
along with the Zones driver for Nova at some point in the future. |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
4 |
|
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
5 |
--- nova-13.1.0/nova/objects/migrate_data.py.~1~ 2016-06-14 08:45:49.000000000 -0700 |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
6 |
+++ nova-13.1.0/nova/objects/migrate_data.py 2016-08-04 00:28:57.050454220 -0700 |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
7 |
@@ -257,3 +257,26 @@ class XenapiLiveMigrateData(LiveMigrateD |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
8 |
@obj_base.NovaObjectRegistry.register |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
9 |
class HyperVLiveMigrateData(LiveMigrateData): |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
10 |
VERSION = '1.0' |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
11 |
+ |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
12 |
+ |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
13 |
+@obj_base.NovaObjectRegistry.register |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
14 |
+class SolarisZonesLiveMigrateData(LiveMigrateData): |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
15 |
+ VERSION = '1.0' |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
16 |
+ |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
17 |
+ fields = { |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
18 |
+ 'hypervisor_hostname': fields.StringField(), |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
19 |
+ } |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
20 |
+ |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
21 |
+ def to_legacy_dict(self, pre_migration_result=False): |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
22 |
+ legacy = super(SolarisZonesLiveMigrateData, self).to_legacy_dict() |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
23 |
+ if self.obj_attr_is_set('hypervisor_hostname'): |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
24 |
+ legacy['hypervisor_hostname'] = self.hypervisor_hostname |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
25 |
+ if pre_migration_result: |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
26 |
+ legacy['pre_live_migration_result'] = {} |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
27 |
+ |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
28 |
+ return legacy |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
29 |
+ |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
30 |
+ def from_legacy_dict(self, legacy): |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
31 |
+ super(SolarisZonesLiveMigrateData, self).from_legacy_dict(legacy) |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
32 |
+ if 'hypervisor_hostname' in legacy: |
52081f923019
24465850 Update Nova for the Mitaka release
Laszlo Peter <laszlo.peter@oracle.com>
parents:
diff
changeset
|
33 |
+ self.hypervisor_hostname = legacy['hypervisor_hostname'] |