aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorentin LABBE <clabbe@baylibre.com>2020-09-22 14:05:27 +0200
committerCorentin LABBE <clabbe@baylibre.com>2020-09-23 10:35:17 +0200
commitb4f560435abf211bf72e472a74e8da4756184224 (patch)
treef1d428d50960ddb130835340c2a4e890af448fb9
parent1af3053a62c11f8455fddb99ba56def91589d663 (diff)
SPEC-3597: add a virtual display device via vnc
We need to add a virtual display device for testing homescreen. Let's add a vnc to do this. But we need to avoid VNC to open a network port, so we will use an unix socket. For handling the fact that two job could run in parallel, each unix patch need to be unique. We will generate an unique path with gerrit id, branch, and a random int. The vnc is added for all qemu since it seems to not hurt ARM/ARM64. We also add a virtio display device on x86_64 since apps are tested only on x86_64. Change-Id: I22412df75cad16f151f73d0d93b0e38ae386ef4d Bug-AGL: SPEC-3597 Signed-off-by: Corentin LABBE <clabbe@baylibre.com>
-rw-r--r--templates/boot/generic-qemu-tmpfs.jinja22
-rw-r--r--templates/machines/qemux86-64.jinja22
-rw-r--r--utils/agljobtemplate.py7
3 files changed, 8 insertions, 3 deletions
diff --git a/templates/boot/generic-qemu-tmpfs.jinja2 b/templates/boot/generic-qemu-tmpfs.jinja2
index b89ac60..ef8273a 100644
--- a/templates/boot/generic-qemu-tmpfs.jinja2
+++ b/templates/boot/generic-qemu-tmpfs.jinja2
@@ -24,7 +24,7 @@ context:
{%- if guestfs_interface is defined %}
guestfs_interface: {{ guestfs_interface }}
{%- endif %}
- extra_options: ["{{ qemu_args }}"]
+ extra_options: ["{{ qemu_args }} -vnc unix:/tmp/vnc-{{ uniqid }}"]
{% endblock %}
{%- block deploy -%}
{{ super() }}
diff --git a/templates/machines/qemux86-64.jinja2 b/templates/machines/qemux86-64.jinja2
index 6c9363e..8bea92c 100644
--- a/templates/machines/qemux86-64.jinja2
+++ b/templates/machines/qemux86-64.jinja2
@@ -6,7 +6,7 @@
{%- set sdk_arch = "x86-64" %}
{%- set device_mach = "x86" %}
{%- set qemu_arch = "x86_64" %}
-{%- set qemu_args = "-cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -smp 2 -m 2048 -soundhw hda -device usb-ehci -device virtio-rng-pci" %}
+{%- set qemu_args = "-cpu qemu64,+ssse3,+sse4.1,+sse4.2,+popcnt -smp 2 -m 2048 -soundhw hda -device usb-ehci -device virtio-rng-pci -vga virtio" %}
{%- set qemu_cmdline = "console=ttyS0,115200 root=/dev/hda verbose systemd.log_color=false rw fstab=no no_timer_check" %}
{%- set rootfs_type = rootfs_type|default("rootvd") %}
{%- if (build_type == 'daily') or (build_type == 'release') or (build_type == 'snapshot') or (build_type == 'prerelease') %}
diff --git a/utils/agljobtemplate.py b/utils/agljobtemplate.py
index 28e06ec..3f4d960 100644
--- a/utils/agljobtemplate.py
+++ b/utils/agljobtemplate.py
@@ -8,7 +8,7 @@ from urllib.parse import urlparse
from urllib.parse import urljoin
from urllib.parse import urlsplit
import ast
-
+import random
def get_extension(path):
return path.split('.')[-1]
@@ -107,6 +107,11 @@ class Agljobtemplate(object):
job['build_type'] = build_type
job['image_type'] = "AGL-%s" % build_type
+ if patchset != None:
+ job["uniqid"] = "AGL-%s-%s-%s-%d" % (machine, changeid, patchset, random.randint(1, 999999))
+ else:
+ job["uniqid"] = "AGL-%s-%s-%s-%d" % (machine, branch, version, random.randint(1, 999999))
+
defaults, infra = parse_cfg_file(self._template_path, 'default.cfg', build_type)
# If the user doesn't specify an URL, use the default one from the build-type