aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCorentin LABBE <clabbe@baylibre.com>2020-09-22 14:05:27 +0200
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2020-09-23 08:46:12 +0000
commit094c8ee7d20e8b89f2c6cb0fa70330c468bf94b7 (patch)
tree3244fd13040ec6daf60cb042a0775cf454e95ff9
parent9ec96f73a5a0c96a1f13deaf08acb82dea9196f0 (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> (cherry picked from commit b4f560435abf211bf72e472a74e8da4756184224)
-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 7d11379..a375da1 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