Ошибка выполнения Selenium тестов на Jenkins c xvfb - почему начались попытки подключится к mir

Больше вопрос по администратированию Linux скорее всего, но наш админ никак не смог помочь.

Jenkins job стал валится с ошибкой:

Xvfb starting$ /usr/bin//Xvfb -displayfd 2 -screen 0 1024x768x24 -fbdir /var/lib/jenkins/xvfb-64-3108471809792396767.fbdir
0
Parsing POMs
Established TCP socket on 40277
....
[INFO] Running TestSuite
...
... TestNG 6.9.7 by Cédric Beust (cedric@beust.com)
...
Aug 24, 2017 12:19:42 PM com.codeborne.selenide.webdriver.WebDriverFactory createFirefoxDriver
INFO: Firefox 48+ is currently not supported by Selenium Firefox driver. Use browser=marionette with geckodriver, when using it.
Failed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused
Error: cannot open display: :99

Раньше никаких попыток подключения к Mir вообще не было, использовался X server, админ думает, что они начались после установки Firefox. Как найти причину почему сейчас происходит попытка использовать Mir?

Там вроде всё сказано

Нет, это просто варнинг. Он и раньше был и локально когда запускаю есть, тесты локально зелёные и раньше джоб был зеленый на дженкинсе, с таким варнингом.

Пальцем в небо, попробуйте вызвать:

export DISPLAY=:1  

или

export DISPLAY=:99

Перед xvfb

поспотрите кто рисует на экране(ах)
в /tmp и сравните с номеро процесса Xvfb :

-r--r--r-- 1 root     root       11 Aug 24 16:54 /tmp/.X0-lock
-r--r--r-- 1 root root   11 Aug 24 17:05 /tmp/.X1234-lock
cat /tmp/.X1234-lock

sudo netstat -anp | grep STREAM  |  grep 1234
unix  2      [ ACC ]     STREAM     LISTENING     25196    3024/Xvfb           /tmp/.X11-unix/X1234
unix  2      [ ACC ]     STREAM     LISTENING     25195    3024/Xvfb           @/tmp/.X11-unix/X1234

и узнаете на каком :DISPLAY работает Xvfb

2 Likes

Сейчас такая ошибка

[workspace] $ /bin/sh -xe /tmp/jenkins1469979306531019641.sh
+ echo Start prebuild step
Start prebuild step
+ xhost +
xhost:  unable to open display ":99"
Build step 'Execute shell' marked build as failure
Xvfb stopping

не совсем поняла ваш мануал, я недавно на линкусе, у меня есть доступ на машину с дженкинсом, что там сделать еще раз напишите пожалуйста! Или вы предлагали эти команды в дженкинс добавить?

Я раньше так запуска xvfb:

Xvfb :99 -ac &
export DISPLAY=:99

Это в jenkins в prebuild step? А плагин xvfb использовали тоже?

нет, без плагина. это просто шельник для запуска тестов. сам запуск тестов я опустил там

попробывала, результат тот же

Failed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused
Error: cannot open display: :99

А плагин у меня с такими настройками работал сейчас:

<?xml version="1.0" encoding="UTF-8"?>
<buildWrappers>
   <buildWrappers />
   <org.jenkinsci.plugins.xvfb.Xvfb plugin="xvfb@1.1.3">
      <prebuilders>
         <installationName>xvfb</installationName>
         <hudson.tasks.Shell>
            <screen>1024x768x24</screen>
            <command>
               Xvfb :99 -ac &amp;
               <debug>true</debug>
               export DISPLAY=:99
            </command>
            <timeout>0</timeout>
         </hudson.tasks.Shell>
         <displayNameOffset>1</displayNameOffset>
      </prebuilders>
      <additionalOptions />
      <shutdownWithBuild>false</shutdownWithBuild>
      <autoDisplayName>true</autoDisplayName>
      <assignedLabels />
      <parallelBuild>true</parallelBuild>
   </org.jenkinsci.plugins.xvfb.Xvfb>
</buildWrappers>

хмм попробуйте просто в setup’е стартануть это как shell команду без плагина для xvfb

Ура, починилось, сделала downgrade плагина xvfb с 1.1.3 к 1.1.2

спасибо - интересный способ решения проблемы ! пож-та напомните как через гитхаб посмотреть diff tag v tag ? то же что


git diff <some  tag> <other tag>

но через бруазер ?