summaryrefslogtreecommitdiffstats
path: root/patches/fuel-library/direct-kernel-boot
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2016-12-18 16:53:26 +0100
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2017-01-21 18:07:28 +0100
commite42a9b3011f96ad26f4a19db77ac44cad31a4290 (patch)
treeb6a1c7f918138dd3e4705d170dde85eb2e5aaa6a /patches/fuel-library/direct-kernel-boot
parent5c258a9ae96fd2a0c6fd56e41c4368467e931782 (diff)
Uplift Armband to Fuel Newton
[ Dan Andresan ] - puppet: database: Fix Percona XtraBackup sync [ Alexandru Avadanii ] - disable all plugins; - re-enable remote tracking; - remove "Revert: Point to specific snapshot ..."; - patch context adjustments; - obsolete "kernel-bump", linux-image-lts-xenial is now the default; - network-checker iface state check now fixed upstream [1]; - fuel-nailgun-agent hugepage size should also check /proc/meminfo; - fuel-nailgun-agent CPU detection for AArch64; - nova AArch64 hugepage support is now upstream; - obsolete Cirros Test VM direct kernel boot (by switch to AAVMF): * f-l/0001-upload_cirros-Add-direct-kernel-boot-support.patch * f-w/0001-direct-kernel-boot-for-cirros.patch - rework m1.micro RAM size patch after puppet manifest split upstream; - re-enable arch-agnostic plugins which were rebased in Fuel@OPNFV: * f_yardstick-pluginbuild * f_congress-pluginbuild - do NOT retire MySQL SST provider patch series (nack: ARMBAND-186), rebase (and keep for now) MySQL SST provider patches, as trying to use xtrabackup-v2 revelead a regression since Colorado.3.0, and these patches simplify troubleshooting a lot; - AArch64: nova: libvirt: Use host-model cpu (ARMBAND-193); - AArch64: nova: libvirt: Use pointer_model instead of use_usb_tablet; - m1.micro RAM size insufficient for TestVM with AAVMF (s/128/256/) - switch Cirros TestVM to AAVMF from direct kernel boot; - backport nova libvirt driver fix for deleting instances booted with AAVMF firmware from [2]; TODO (later): - Include ISO build time fixes for cirros_testvm in Armband package; TODO (ODL, later): - test & revise leveldb patching; - bring back Qugga patching for arm64; - configure systemd service to automatically respawn; [1] https://review.openstack.org/#/c/417373/ [2] https://review.openstack.org/#/c/357190/ JIRA: ARMBAND-29 JIRA: ARMBAND-32 JIRA: ARMBAND-63 JIRA: ARMBAND-88 JIRA: ARMBAND-116 JIRA: ARMBAND-118 JIRA: ARMBAND-186 JIRA: ARMBAND-193 JIRA: ARMBAND-194 JIRA: ARMBAND-195 JIRA: ARMBAND-196 JIRA: ARMBAND-197 Change-Id: Ia99022e364e61245d109cabab9d0ed7157b4d2f5 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Signed-off-by: Dan Andresan <dan.andresan@enea.com>
Diffstat (limited to 'patches/fuel-library/direct-kernel-boot')
-rw-r--r--patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch118
-rw-r--r--patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch4
2 files changed, 1 insertions, 121 deletions
diff --git a/patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch b/patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch
deleted file mode 100644
index f3eb0748..00000000
--- a/patches/fuel-library/direct-kernel-boot/0001-upload_cirros-Add-direct-kernel-boot-support.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-From: Stanislaw Kardach <stanislaw.kardach@cavium.com>
-Date: Tue, 15 Mar 2016 15:01:34 +0100
-Subject: [PATCH] upload_cirros: Add direct kernel boot support.
-
-AArch64 currently only supports direct kernel boot, so add the
-functionality of uploading and connecting kernel and initramfs
-images (disk formats `AKI` and `ARI`).
-
-Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
----
- .../osnailyfacter/modular/astute/upload_cirros.rb | 55 ++++++++++++++++++++--
- 1 file changed, 51 insertions(+), 4 deletions(-)
-
-diff --git a/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb b/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb
-index f0441b0..371d051 100755
---- a/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb
-+++ b/deployment/puppet/osnailyfacter/modular/astute/upload_cirros.rb
-@@ -51,12 +51,12 @@ end
- def image_list
- stdout = `glance --verbose image-list`
- return_code = $?.exitstatus
-- images = []
-+ images = Hash[]
- stdout.split("\n").each do |line|
- fields = line.split('|').map { |f| f.chomp.strip }
- next if fields[1] == 'ID'
- next unless fields[2]
-- images << {fields[2] => fields[6]}
-+ images[fields[2]] = { :id => fields[1], :status => fields[6] }
- end
- {:images => images, :exit_code => return_code}
- end
-@@ -78,6 +78,16 @@ EOF
- [ stdout, return_code ]
- end
-
-+# Calls glance update-image with a given property and value
-+# Supported properties: 'kernel-id', 'ramdisk-id'
-+def update_image(image_id, property, value)
-+ command = "/usr/bin/openstack image set --#{property}=#{value} #{image_id}"
-+ puts command
-+ stdout = `#{command}`
-+ return_code = $?.exitstatus
-+ [ stdout, return_code ]
-+end
-+
- # check if Glance is online
- # waited until the glance is started because when vCenter used as a glance
- # backend launch may takes up to 1 minute.
-@@ -133,7 +143,7 @@ end
- # return true if image has been uploaded and active
- def check_image(image)
- list_of_images = image_list
-- if list_of_images[:exit_code] == 0 && list_of_images[:images].include?(image['img_name'] => "active")
-+ if list_of_images[:exit_code] == 0 && list_of_images[:images].select { |k,v| k == image['img_name'] and v[:status] == "active" }.count > 0
- return true
- end
- return false
-@@ -144,7 +154,7 @@ end
- # the first one
- def cleanup_image(image)
- list_of_images = image_list
-- unless list_of_images[:images].select { |img_hash| img_hash.key?(image['img_name']) }.empty?
-+ unless list_of_images[:images].select { |img_hash, v| img_hash == image['img_name'] }.count == 0
- delete_image(image['img_name'])
- end
- end
-@@ -157,6 +167,41 @@ def delete_image(image_name)
- [ stdout, return_code ]
- end
-
-+# For each disk image try to find a kernel and initramfs images and
-+# attach then to it via kernel_id and ramdisk_id glance properties.
-+def connect_dependant_images(images)
-+ # for each image
-+ # get image id from glance
-+ img_list = image_list
-+ return_code = img_list[:exit_code]
-+ if return_code == 0
-+ images.each do |image|
-+ img_list[:images].each do |k,v|
-+ if k == image['img_name']
-+ image['id'] = v[:id]
-+ end
-+ end
-+ end
-+ # for each image that is not in [aki, ari]
-+ images.each do |image|
-+ next if ['aki', 'ari'].include?(image['disk_format'])
-+ images.each do |i|
-+ # find aki/ari image whose name starts with this image's name
-+ if i['img_name'].start_with?(image['img_name'])
-+ ret = 0
-+ if i['disk_format'] == 'aki'
-+ _, ret = update_image(image['id'], 'kernel-id', i['id'])
-+ elsif i['disk_format'] == 'ari'
-+ _, ret = update_image(image['id'], 'ramdisk-id', i['id'])
-+ end
-+ return_code += ret
-+ end
-+ end
-+ end
-+ end
-+ return return_code
-+end
-+
- ########################
-
- wait_for_glance
-@@ -180,6 +225,8 @@ if errors > 0
- cleanup_image(image)
- end
- exit 1
-+elsif connect_dependant_images(test_vm_images) > 0
-+ exit 2
- end
-
- exit 0
diff --git a/patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch b/patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch
index 7cc743af..51c66f76 100644
--- a/patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch
+++ b/patches/fuel-library/direct-kernel-boot/0002-nova-Fix-inject-for-direct-boot-with-part-table.patch
@@ -71,9 +71,7 @@ diff --git a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp b/depl
index dc61033..3fcfb51 100644
--- a/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
+++ b/deployment/puppet/openstack_tasks/manifests/roles/compute.pp
-@@ -319,6 +319,18 @@ class openstack_tasks::roles::compute {
- cinder_catalog_info => pick($nova_hash_real['cinder_catalog_info'], 'volumev2:cinderv2:internalURL'),
- rabbit_heartbeat_timeout_threshold => $::os_service_default,
+@@ -319,4 +319,16 @@ class openstack_tasks::roles::compute {
} ->
+ # FIXME(armband): Fix inject for part image direct boot (bug LP #1469308)
+ file { "${nova_path}/libvirt-inject.patch":