Friday, July 2, 2010

Hudson xvnc plugin under openSuse

It took a me a bit of struggling to configure hudson xvnc plugin under openSuse in order to run android emulator.
The problem I was having is that xvnc was failing to start even if I configured it for password previously:

vncserver: Could not create /root/.vnc

what immediately seemed odd is that it tried to create files under the root while Hudson was running under its own user!

Not sure what the plugin was doing but it's fixed by giving it a tip on the correct home which is done in configuration (which is left empty by default) of the xvnc plugin in Hudson:

Command line:

env HOME=/home/hudson vncserver :$DISPLAY_NUMBER -geometry 800x600

It's probably a good idea to play with the arguments but vncserver is now starting:

Starting applications specified in /home/hudson/.vnc/xstartup
<pre style="white-space: pre-wrap; word-wrap: break-word; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Log file is /home/hudson/.vnc/hudsonsrv:30.log

And after all is done we see its being termiated:

Terminating xvnc.

UPDATE: I have to give up the hudson-android plugin for a bit (until it starts working of course :) and start the emulator in /home/hudson/.vnc/xstartup (as shown in the logs) by inserting the command for launching the emulator in that script...