4 Replies Latest reply on Jul 20, 2010 8:44 AM by luciano.bustos

    How do setup FlexUnit in your CI build process on 64-Bit Linux

    mbbender Level 1

      Hello everyone. I am trying to setup FlexUnit in my build process and am using Rackspace cloud servers for my build server. I only have the option of Linux 64 bit distros or Windows 32b/64b. I started setting up and configuring everything on Linux but ran into problems installing the required stand alone player for test execution using FlexUnit. There is no 64-bit linux compatitble version of the stand alone player. In configuring the system to use the browser plugin on the machine instead of the stand alone player for executing the tests, I then get a manual interaction component which doesn't fit well with an automated CI build.

       

      Am I the only person out there trying to integrate FlexUnit into my CI process on a 64b Linux machine? Any pointers, tips, workarounds or general hypothetical ideas would be great!

        • 1. Re: How do setup FlexUnit in your CI build process on 64-Bit Linux
          legrosb Level 3

          @mbbender - Fear not, you are not alone in your endeavor to run FlexUnit in your CI process on a 64-bit server.  Since 64-bit resources are unavailable for the FP (i.e. - 64-bit SA Debug FP), you'll have to use use the 32-bit version of the SA Debug FP (http://www.adobe.com/support/flashplayer/downloads.html#fp10) for Linux.  This does mean that you'll need the 32-bit versions of the FP dependencies installed in addition to the 64-bit versions for compatibility.  You can find a KB article on the supported OSes and required dependencies @ http://kb2.adobe.com/cps/153/tn_15380.html, http://kb2.adobe.com/cps/000/6b3af6c9.html#main_install64bit, and http://www.adobe.com/products/flashplayer/systemreqs/.  I'm currently running 10.0 at the office on 64-bit CentOS and have heard of others having success using Ubuntu.  Worse case scenario if you get stuck, post to the FP Support Forum to see what help they can offer.

           

          Once you have the FP running, to run in the context of a headless build, you'll need to use an emulated windowing environment via xvnc or xvfb; this is a req of the FP.  The FlexUnit Ant task has a headless property which when set to true will wrap the call to the FP in an xvnc server to allow it to run on headless builds; Hudson also has a very nice and even more robust plugin to manage builds using xvnc as well.  As you make progress feel free to ping us for help and we'll do the best we can to help out.

           

          -Brian

          • 2. Re: How do setup FlexUnit in your CI build process on 64-Bit Linux
            mbbender Level 1

            @legrosb - So let me see if I understand.

             

            I have been able to get the Flash Plugin working in a browser on my 64b Ubuntu 10.4 system. However, from my understanding I can not use the flash plugin from a browser to properly execute a headless execution of my tests during the CI process. To execute the tests as part of the CI process I need the Flash Stand Alone Player.

             

            I get the windowing part and can do that, but I can't get Flash Stand Alone Player to execute on the 64b machine.

             

            Are you saying that I can somehow use the Flash Plugin dependencies to install the Flash Stand Alone Player? If so, would I then need a 32b emulator wrapper for running the Stand Alone Player?

             

            Or, are you suggesting that I can somehow use the Flash Plugin in the browser to do what I need to execute my tests during the Hudson build?

             

            Do you have a CI build process setup on a Linux 64b CentOS system with FlexUnit? To be honest, I'm more concerned with the end result right now than learning how to do it on my own and would like to know if you can potentially help me get this done a little quicker if you are interested.

             

            Many thanks for the reply.

            • 3. Re: How do setup FlexUnit in your CI build process on 64-Bit Linux
              legrosb Level 3

              @mbbender - Answers below:

               

              > I have been able to get the Flash Plugin working in a browser on my 64b Ubuntu 10.4 system. However, from my understanding I can not use the flash plugin from a browser to properly execute a headless execution of my tests during the CI process. To execute the tests as part of the CI process I need the Flash Stand Alone Player.

               

              -- As of FlexUnit 4.1-beta2, you have the option of executing your tests using the stand-alone debug Flash Player using the default mechanism to launch that player or using a custom command, which could potentially point to the browser.  Check out the docs on the Ant task @ http://docs.flexunit.org/index.php?title=Ant_Task#Usage and the sample CI build using a browser @ http://github.com/flexunit/flexunit/blob/master/FlexUnit4SampleCIProject/build.browser.xml for more details on how to do this.

               

              > Are you saying that I can somehow use the Flash Plugin dependencies to install the Flash Stand Alone Player? If so, would I then need a 32b emulator wrapper for running the Stand Alone Player?  Or, are you suggesting that I can somehow use the Flash Plugin in the browser to do what I need to execute my tests during the Hudson build?

               

              -- Although I'm not a savvy Linux admin, it's my understanding that recent 64-bit Linux distros can execute 32-bit applications as well as 64-bit applications.  The only req I'm aware of is that the 32-bit version of the dependencies must be available.  In this case, executing the 32-bit version of the SA player should work from what I understand.

               

              > Do you have a CI build process setup on a Linux 64b CentOS system with FlexUnit? To be honest, I'm more concerned with the end result right now than learning how to do it on my own and would like to know if you can potentially help me get this done a little quicker if you are interested.

               

              -- I currently have a setup using 64-bit CentOS and running the 32-bit SA player, although it's not on Adobe's proper list of supported OSes.  We've worked with other folks who have the 32-bit SA player running with FlexUnit on Ubuntu 64-bit.  There was some feedback on some issues using older versions of openSUSE, but I don't know too many details re: the problem.

               

              Hope this helps.

               

              -Brian

              • 4. Re: How do setup FlexUnit in your CI build process on 64-Bit Linux
                luciano.bustos Level 1

                I also managed to get FlashPlayer running on Centos 5.4. with hudson.

                Important things to check:

                 

                1. gfplashplayer pointing to DebugPlayer.exe and right permission for hudson.
                  1. I have to copy gflashplayer symlink to a reachable place for hudson. (something like var/lib/hudson/ .  I don't know why:S )
                2. xvnc permission and configuration for hudson.
                  1. to check this one you can you login to centos via Putty or similar and execute "gflashplayer path_to_your_swf_file.swf". it must run, start an xvnc-session. (ctrl+C kill the process) .Hudson do something similar to this.
                3. set headles attribute to true for the <flexunit_ant_task/>

                 

                It's priceless when you get hudson and flexunit run on your box!.