summaryrefslogtreecommitdiffstats
path: root/utils/test/vnfcatalogue/VNF_Catalogue
stat options
Period:
Authors:

Commits per author per week (path 'utils/test/vnfcatalogue/VNF_Catalogue')

AuthorW23 2024W24 2024W25 2024W26 2024Total
Total00000
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
From: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
Date: Tue, 15 Mar 2016 15:01:51 +0100
Subject: [PATCH] direct kernel boot for cirros

---
 nailgun/nailgun/orchestrator/base_serializers.py   | 16 +++--
 .../nailgun/orchestrator/deployment_serializers.py | 68 ++++++++++++++++------
 2 files changed, 61 insertions(+), 23 deletions(-)

diff --git a/nailgun/nailgun/orchestrator/base_serializers.py b/nailgun/nailgun/orchestrator/base_serializers.py
index 0643635..a2f43b0 100644
--- a/nailgun/nailgun/orchestrator/base_serializers.py
+++ b/nailgun/nailgun/orchestrator/base_serializers.py
@@ -145,12 +145,16 @@ class MuranoMetadataSerializerMixin(object):
 
     def inject_murano_settings(self, image_data):
         """Adds murano metadata to the test image"""
-        test_vm_image = image_data['test_vm_image']
-        existing_properties = test_vm_image['glance_properties']
-        murano_data = ' '.join(["""--property murano_image_info='{"title":"""
-                               """ "Murano Demo", "type": "cirros.demo"}'"""])
-        test_vm_image['glance_properties'] = existing_properties + murano_data
-        return {'test_vm_image': test_vm_image}
+        test_vm_images = []
+        for test_vm_image in image_data['test_vm_image']:
+            existing_properties = test_vm_image['glance_properties']
+            murano_data = ' '.join(
+                ["""--property murano_image_info='{"title":"""
+                    """ "Murano Demo", "type": "cirros.demo"}'"""])
+            test_vm_image['glance_properties'] = existing_properties + \
+                murano_data
+            test_vm_images += [test_vm_image]
+        return {'test_vm_image': test_vm_images}
 
 
 class VmwareDeploymentSerializerMixin(object):
diff --git a/nailgun/nailgun/orchestrator/deployment_serializers.py b/nailgun/nailgun/orchestrator/deployment_serializers.py
index 6bb7990..62fb08b 100644
--- a/nailgun/nailgun/orchestrator/deployment_serializers.py
+++ b/nailgun/nailgun/orchestrator/deployment_serializers.py
@@ -283,6 +283,9 @@ class DeploymentMultinodeSerializer(object):
         return {'glance': {'image_cache_max_size': image_cache_max_size}}
 
     def generate_test_vm_image_data(self, node):
+        images = []
+        # By default always prepare the disk image
+
         # Instantiate all default values in dict.
         image_data = {
             'container_format': 'bare',
@@ -306,8 +309,8 @@ class DeploymentMultinodeSerializer(object):
             arch = "x86_64"
         elif arch == "arm64":
             arch = "aarch64"
-        image_data['img_path'] = '{0}cirros-{1}-disk.img'.format(img_dir,
-            arch)
+        image_data['img_path'] = \
+            '{0}cirros-{1}-disk.img'.format(img_dir, arch)
 
         glance_properties = []
 
@@ -322,8 +325,38 @@ class DeploymentMultinodeSerializer(object):
             glance_properties.append('--property hypervisor_type=vmware')
 
         image_data['glance_properties'] = ' '.join(glance_properties)
+        images += [image_data]
+
+        # Now for aarch64 add also kernel and initrd because we direct
+        # kernel boot is used then
+        if arch == 'aarch64':
+            image_data['glance_properties'] += \
+                ' --property os_command_line=\'root=/dev/vda1 rw rootwait' + \
+                ' console=tty0 console=ttyS0 console=ttyAMA0\'' + \
+                ' --property hw_video_model=vga'
+            kernel_data = {
+                'container_format': 'aki',
+                'public': 'true',
+                'disk_format': 'aki',
+                'img_name': 'TestVM-kernel',
+                'img_path': '{0}cirros-{1}-kernel'.format(img_dir, arch),
+                'os_name': 'cirros',
+                'min_ram': 128,
+                'glance_properties': '',
+            }
+            initrd_data = {
+                'container_format': 'ari',
+                'public': 'true',
+                'disk_format': 'ari',
+                'img_name': 'TestVM-initramfs',
+                'img_path': '{0}cirros-{1}-initramfs'.format(img_dir, arch),
+                'os_name': 'cirros',
+                'min_ram': 128,
+                'glance_properties': '',
+            }
+            images += [kernel_data, initrd_data]
 
-        return {'test_vm_image': image_data}
+        return {'test_vm_image': images}
 
     @classmethod
     def get_net_provider_serializer(cls, cluster):
@@ -522,20 +555,21 @@ class DeploymentHASerializer61(DeploymentHASerializer,
         images_data['test_vm_image'] = []
         if attrs.get('editable', {}).get('common', {}). \
            get('use_vcenter', {}).get('value') is True:
-            image_vmdk_data = deepcopy(image_data['test_vm_image'])
-            img_path = image_vmdk_data['img_path']. \
-                replace('x86_64-disk.img', 'i386-disk.vmdk')
-            image_vmdk_data.update({
-                'img_name': 'TestVM-VMDK',
-                'disk_format': 'vmdk',
-                'img_path': img_path,
-            })
-            image_vmdk_data['glance_properties'] = ' '.join([
-                '--property vmware_disktype=sparse',
-                '--property vmware_adaptertype=lsiLogic',
-                '--property hypervisor_type=vmware'])
-            images_data['test_vm_image'].append(image_vmdk_data)
-            images_data['test_vm_image'].append(image_data['test_vm_image'])
+            images_vmdk_data = deepcopy(image_data['test_vm_image'])
+            for image_vmdk_data in images_vmdk_data:
+                img_path = image_vmdk_data['img_path']. \
+                    replace('x86_64-disk.img', 'i386-disk.vmdk')
+                image_vmdk_data.update({
+                    'img_name': 'TestVM-VMDK',
+                    'disk_format': 'vmdk',
+                    'img_path': img_path,
+                })
+                image_vmdk_data['glance_properties'] = ' '.join([
+                    '--property vmware_disktype=sparse',
+                    '--property vmware_adaptertype=lsiLogic',
+                    '--property hypervisor_type=vmware'])
+                images_data['test_vm_image'] += [image_vmdk_data]
+            images_data['test_vm_image'] += image_data['test_vm_image']
         else:
             images_data = image_data