GradleFx + Flexunit Continuos Integration support (CentOS)

Jhon's Avatar

Jhon

26 Feb, 2014 08:36 PM

Hi

One of the challenges of integrating automated testing into a continuous integration build, for a Flex/AIR application, is the need to execute the Flash Player or AIR environment to produce test results. Both the Flash Player and AIR environment currently require windowing environments to execute Flex/AIR applications correctly; which might not be installed on the CI server.

Most installations of CI solutions are made on Linux machines not running a windowing environment, such as X-Windows. Because of the requirement to execute the Flash Player and AIR in a windowed environment, it is not possible to execute a CI build on these types of installations unless the dependencies for a windowing environment have been installed. In addition to this dependency, an intermediate process is required to redirect windowing output to an emulated display.

I am pretty sure I am running into the problem described above, I am able to build the application from my Desktop, However I am getting the following error when the test target is executed in my CI server.

What went wrong: Execution failed for task ':test'.

java.util.concurrent.ExecutionException: Socket timeout waiting for flexunit report

Do you have any suggestion about how to setup gradle+flexunit in my CI Server? (Bamboo on CentOS 5)

Attached is my build file

Thanks

  1. Support Staff 1 Posted by Yennick Trevels on 27 Feb, 2014 07:21 AM

    Yennick Trevels's Avatar

    Hi,

    I've had this same problem twice, once with a Maven build and once with Gradle, both on a Jenkins build server (never on Bamboo).
    With Maven (and FlexMojos), I gave up after a certain time...
    With the Gradle build, that was actually the testbed build which GradleFx uses to verify regression bugs. I was able to get this working with the XVNC plugin for Jenkins, which provides you with a display environment while your build runs. I've found some notes about how I did this back then, I hope they are still complete:

    Make flashplayer executable run on 64-bit
    apt-get install ia32-libs
    apt-get install ia32-libs-gtk
    
    install xvnc
    Install the xvnc plugin for jenkins
    install vncserver on linux: apt-get install vnc4server
    log in as jenkins user
    run "vnc4server" on the command-line and provide a password
    
    Air timestamp error: run the build with JDK6 instead of JDK7
    

    So this is for the Jenkins build server, maybe you can find something similar for Bamboo.

  2. 2 Posted by usama.ahmed on 09 Dec, 2015 08:09 AM

    usama.ahmed's Avatar

    GrafleFx fails to get response from TestRunner.swf on ubuntu Continuous Integration server.

    here is the error

    Execution failed for task ':test'.
    java.util.concurrent.ExecutionException: Socket timeout waiting for flexunit report

  3. Support Staff 3 Posted by Yennick Trevels on 09 Dec, 2015 08:12 AM

    Yennick Trevels's Avatar

    Have you tried running it under xvnc (as described in my previous reply in this thread)? This is what solved it for me.

  4. 4 Posted by usama.ahmed on 09 Dec, 2015 04:35 PM

    usama.ahmed's Avatar

    xvnc server is already installed and Gradlefx is using it. I have to kill vncserver process every time gradlefx fails with the above error.

Reply to this discussion

Internal reply

Formatting help / Preview (switch to plain text) No formatting (switch to Markdown)

Attaching KB article:

»

Attached Files

You can attach files up to 10MB

If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac