ci/weston: before testing, verify that XWayland is really running
authorDavid Heidelberg <david.heidelberg@collabora.com>
Sat, 4 Mar 2023 17:01:49 +0000 (18:01 +0100)
committerMarge Bot <emma+marge@anholt.net>
Thu, 9 Mar 2023 21:06:16 +0000 (21:06 +0000)
When Xorg already running, Weston XWayland should pick DISPLAY=:1

Reviewed-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21711>

.gitlab-ci/common/init-stage2.sh

index a19d479..cb00bed 100755 (executable)
@@ -145,18 +145,24 @@ if [ -n "$HWCI_START_XORG" ]; then
 fi
 
 if [ -n "$HWCI_START_WESTON" ]; then
+  WESTON_X11_SOCK="/tmp/.X11-unix/X0"
+  if [ -n "$HWCI_START_XORG" ]; then
+    echo "Please consider dropping HWCI_START_XORG and instead using Weston XWayland for testing."
+    WESTON_X11_SOCK="/tmp/.X11-unix/X1"
+  fi
   export XDG_RUNTIME_DIR=/run/user
   mkdir -p $XDG_RUNTIME_DIR
+  export WAYLAND_DISPLAY=wayland-0
 
-  # Xwayland to be used when HWCI_START_XORG is not set
+  # Display server is Weston Xwayland when HWCI_START_XORG is not set or Xorg when it's
   export DISPLAY=:0
   mkdir -p /tmp/.X11-unix
 
   env \
-    VK_ICD_FILENAMES=/install/share/vulkan/icd.d/${VK_DRIVER}_icd.`uname -m`.json \
+    VK_ICD_FILENAMES="/install/share/vulkan/icd.d/${VK_DRIVER}_icd.$(uname -m).json" \
     weston -Bheadless-backend.so --use-gl -Swayland-0 --xwayland &
-  export WAYLAND_DISPLAY=wayland-0
-  sleep 1
+
+  while [ ! -S "$WESTON_X11_SOCK" ]; do sleep 1; done
 fi
 
 RESULT=fail