Merge lp:~jamesbeedy/charms/trusty/nova-compute/next into lp:~openstack-charmers-archive/charms/trusty/nova-compute/next

Proposed by james beedy on 2015-09-25
Status: Merged
Merged at revision: 172
Proposed branch: lp:~jamesbeedy/charms/trusty/nova-compute/next
Merge into: lp:~openstack-charmers-archive/charms/trusty/nova-compute/next
Diff against target: 111 lines (+46/-0)
6 files modified
config.yaml (+16/-0)
hooks/nova_compute_context.py (+6/-0)
templates/havana/nova.conf (+6/-0)
templates/icehouse/nova.conf (+6/-0)
templates/juno/nova.conf (+6/-0)
templates/kilo/nova.conf (+6/-0)
To merge this branch: bzr merge lp:~jamesbeedy/charms/trusty/nova-compute/next
Reviewer Review Type Date Requested Status
Liam Young 2015-09-25 Approve on 2015-10-08
Antonio Rosales 2015-09-25 Pending
James Page 2015-09-25 Pending
Review via email: mp+272431@code.launchpad.net

This proposal supersedes a proposal from 2015-09-25.

Commit message

Enable live migration between heterogeneous kvm hypervisors.

Fixes: Bug #1499611

Description of the change

Enable live migration between heterogeneous kvm hypervisors.

Modified NovaComputeLibvirtContext in nova_compute_context.py to
transclude 'cpu-mode' and 'cpu-model' into nova.conf.

Added conditional tags for 'cpu_mode' and 'cpu_model' to the havana,
icehouse, juno, and kilo nova.conf templates.

Added 'cpu-mode' and 'cpu-model' string params and descriptions to
config.yaml.

Fixes: Bug #1499611

To post a comment you must log in.
uosci-testing-bot (uosci-testing-bot) wrote : Posted in a previous version of this proposal

charm_lint_check #10763 nova-compute-next for jamesbeedy mp272420
    LINT FAIL: lint-test failed

LINT Results (max last 2 lines):
make: *** [lint] Error 1
ERROR:root:Make target returned non-zero.

Full lint test output: http://paste.ubuntu.com/12555280/
Build: http://10.245.162.77:8080/job/charm_lint_check/10763/

charm_lint_check #10769 nova-compute-next for jamesbeedy mp272431
    LINT OK: passed

Build: http://10.245.162.77:8080/job/charm_lint_check/10769/

charm_unit_test #9947 nova-compute-next for jamesbeedy mp272431
    UNIT OK: passed

Build: http://10.245.162.77:8080/job/charm_unit_test/9947/

charm_amulet_test #6774 nova-compute-next for jamesbeedy mp272431
    AMULET OK: passed

Build: http://10.245.162.77:8080/job/charm_amulet_test/6774/

Liam Young (gnuoy) wrote :

approved

review: Approve
Liam Young (gnuoy) wrote :

Thank for taking the time to create this patch, it is very much appreciated!

james beedy (jamesbeedy) wrote :

NP! Thank you for accepting!

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'config.yaml'
--- config.yaml 2015-08-13 09:11:23 +0000
+++ config.yaml 2015-09-25 15:32:16 +0000
@@ -211,6 +211,22 @@
211 order for this charm to function correctly, the privacy extension must be211 order for this charm to function correctly, the privacy extension must be
212 disabled and a non-temporary address must be configured/available on212 disabled and a non-temporary address must be configured/available on
213 your network interface.213 your network interface.
214 cpu-mode:
215 type: string
216 default:
217 description: |
218 Set to 'host-model' to clone the host CPU feature flags; to
219 'host-passthrough' to use the host CPU model exactly; to 'custom' to
220 use a named CPU model; to 'none' to not set any CPU model. If
221 virt_type='kvm|qemu', it will default to 'host-model', otherwise it will
222 default to 'none'.
223 cpu-model:
224 type: string
225 default:
226 description: |
227 Set to a named libvirt CPU model (see names listed in
228 /usr/share/libvirt/cpu_map.xml). Only has effect if cpu_mode='custom' and
229 virt_type='kvm|qemu'.
214 # Storage configuration options230 # Storage configuration options
215 libvirt-image-backend:231 libvirt-image-backend:
216 type: string232 type: string
217233
=== modified file 'hooks/nova_compute_context.py'
--- hooks/nova_compute_context.py 2015-08-13 10:31:20 +0000
+++ hooks/nova_compute_context.py 2015-09-25 15:32:16 +0000
@@ -124,6 +124,12 @@
124 if config('disk-cachemodes'):124 if config('disk-cachemodes'):
125 ctxt['disk_cachemodes'] = config('disk-cachemodes')125 ctxt['disk_cachemodes'] = config('disk-cachemodes')
126126
127 if config('cpu-mode'):
128 ctxt['cpu_mode'] = config('cpu-mode')
129
130 if config('cpu-model'):
131 ctxt['cpu_model'] = config('cpu-model')
132
127 if config('hugepages'):133 if config('hugepages'):
128 ctxt['hugepages'] = True134 ctxt['hugepages'] = True
129135
130136
=== modified file 'templates/havana/nova.conf'
--- templates/havana/nova.conf 2015-04-13 12:22:05 +0000
+++ templates/havana/nova.conf 2015-09-25 15:32:16 +0000
@@ -128,6 +128,12 @@
128{% endif -%}128{% endif -%}
129129
130[libvirt]130[libvirt]
131{% if cpu_mode -%}
132cpu_mode = {{ cpu_mode }}
133{% endif -%}
134{% if cpu_model -%}
135cpu_model = {{ cpu_model }}
136{% endif -%}
131{% if libvirt_images_type -%}137{% if libvirt_images_type -%}
132images_type = {{ libvirt_images_type }}138images_type = {{ libvirt_images_type }}
133images_rbd_pool = {{ rbd_pool }}139images_rbd_pool = {{ rbd_pool }}
134140
=== modified file 'templates/icehouse/nova.conf'
--- templates/icehouse/nova.conf 2015-09-23 14:01:44 +0000
+++ templates/icehouse/nova.conf 2015-09-25 15:32:16 +0000
@@ -146,6 +146,12 @@
146{% endif -%}146{% endif -%}
147147
148[libvirt]148[libvirt]
149{% if cpu_mode -%}
150cpu_mode = {{ cpu_mode }}
151{% endif -%}
152{% if cpu_model -%}
153cpu_model = {{ cpu_model }}
154{% endif -%}
149{% if libvirt_images_type -%}155{% if libvirt_images_type -%}
150images_type = {{ libvirt_images_type }}156images_type = {{ libvirt_images_type }}
151images_rbd_pool = {{ rbd_pool }}157images_rbd_pool = {{ rbd_pool }}
152158
=== modified file 'templates/juno/nova.conf'
--- templates/juno/nova.conf 2015-08-25 17:40:00 +0000
+++ templates/juno/nova.conf 2015-09-25 15:32:16 +0000
@@ -142,6 +142,12 @@
142{% endif -%}142{% endif -%}
143143
144[libvirt]144[libvirt]
145{% if cpu_mode -%}
146cpu_mode = {{ cpu_mode }}
147{% endif -%}
148{% if cpu_model -%}
149cpu_model = {{ cpu_model }}
150{% endif -%}
145{% if libvirt_images_type -%}151{% if libvirt_images_type -%}
146images_type = {{ libvirt_images_type }}152images_type = {{ libvirt_images_type }}
147images_rbd_pool = {{ rbd_pool }}153images_rbd_pool = {{ rbd_pool }}
148154
=== modified file 'templates/kilo/nova.conf'
--- templates/kilo/nova.conf 2015-08-25 17:40:00 +0000
+++ templates/kilo/nova.conf 2015-09-25 15:32:16 +0000
@@ -147,6 +147,12 @@
147{% endif -%}147{% endif -%}
148148
149[libvirt]149[libvirt]
150{% if cpu_mode -%}
151cpu_mode = {{ cpu_mode }}
152{% endif -%}
153{% if cpu_model -%}
154cpu_model = {{ cpu_model }}
155{% endif -%}
150{% if libvirt_images_type -%}156{% if libvirt_images_type -%}
151images_type = {{ libvirt_images_type }}157images_type = {{ libvirt_images_type }}
152images_rbd_pool = {{ rbd_pool }}158images_rbd_pool = {{ rbd_pool }}

Subscribers

People subscribed via source and target branches