[jbosstools-issues] [JBoss JIRA] (JBIDE-10974) Use Xvfb for build jobs instead of Xvnc

Nick Boldt (JIRA) jira-events at lists.jboss.org
Sun Mar 4 11:34:36 EST 2012


    [ https://issues.jboss.org/browse/JBIDE-10974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12673416#comment-12673416 ] 

Nick Boldt edited comment on JBIDE-10974 at 3/4/12 11:33 AM:
-------------------------------------------------------------

10. Aggregation happens less than it used to because it's now set to "block when upstream is building"; as a result, most aggregations happen as a result of several upstream jobs asking it to be run. The opposite problem now occurs: people complain that aggregation doesn't happen often enough. :)

9. This could be fixed by instead of watching the /build folder in SVN for changes, we simply fetch it using `svn co` or `svn up` as a prelim step in the job. Perhaps taking this a step further, we could fetch the whole SVN tree and store it outside the workspaces so that jobs would simply re-use local shared space instead of clean-fetching everything every time they run on a new slave. See JBIDE-11155.

8. Shell is currently only used for bootstrapping Jenkins and publishing -- does not affect offline builds. AFAIK, none of the Ant scripts still depend on any <exec> calls to something platform-specific except: build/aggregate/build.xml -- see JBIDE-11156. Even in that case, you can skip the step that needs wget with *-Dcollect.zips.skip=true*; therefore you don't need cygwin anymore to run builds offline.

7. This should definitely be changed so that core tests don't need UI. *Denis, Can you open jobs for each component that's doing this wrong?*

6. This is necessary so that upstream API changes will trickle down correctly. Otherwise Maven fails because of changes in seam, vpe, jst, common, etc.

5. Building all the tests separately in another job is done in the .tests job, which can take >6hrs. But each component needs faster results than that, so they run their tests personally too.

4. This should be fixed. See JBIDE-11158

3. See JBIDE-11155.

2. Takes about 30 seconds - not significant. But really, we should be using Nexus here anyway. See JBIDE-11157

1. *Denis, what do you propose we do differently here? Jenkins jobs should ONLY use local profiles in place of remote ones?*

0. Randomly crashing slaves IS a problem, but it's a hard one to diagnose and fix. So, yes, there are more "low hanging fruit" options available. :)
                
      was (Author: nickboldt):
    10. Aggregation happens less than it used to because it's now set to "block when upstream is building"; as a result, most aggregations happen as a result of several upstream jobs asking it to be run. The opposite problem now occurs: people complain that aggregation doesn't happen often enough. :)

9. This could be fixed by instead of watching the /build folder in SVN for changes, we simply fetch it using `svn co` or `svn up` as a prelim step in the job. Perhaps taking this a step further, we could fetch the whole SVN tree and store it outside the workspaces so that jobs would simply re-use local shared space instead of clean-fetching everything every time they run on a new slave. See JBIDE-11155.

8. Shell is currently only used for bootstrapping Jenkins and publishing -- does not affect offline builds. AFAIK, none of the Ant scripts still depend on any <exec> calls to something platform-specific except: build/aggregate/build.xml -- see JBIDE-11156. Even in that case, you can skip the step that needs wget with *-Dcollect.zips.skip=true*; therefore you don't need cygwin anymore to run builds offline.

7. This should definitely be changed so that core tests don't need UI. *Denis, Can you open jobs for each component that's doing this wrong?*

6. This is necessary so that upstream API changes will trickle down correctly. Otherwise Maven fails because of changes in seam, vpe, jst, common, etc.

5. Building all the tests separately in another job is done in the .tests job, which can take >6hrs. But each component needs faster results than that, so they run their tests personally too.

4. This should be fixed. See JBIDE-11158

3. See JBIDE-11155.

2. Takes about 30 seconds - not significant. But really, we should be using Nexus here anyway. See JBIDE-11157

1. Denis, what do you propose we do differently here? Jenkins jobs should ONLY use local.* profiles in place of remote ones?

0. Randomly crashing slaves IS a problem, but it's a hard one to diagnose and fix. So, yes, there are more "low hanging fruit" options available. :)
                  
> Use Xvfb for build jobs instead of Xvnc
> ---------------------------------------
>
>                 Key: JBIDE-10974
>                 URL: https://issues.jboss.org/browse/JBIDE-10974
>             Project: Tools (JBoss Tools)
>          Issue Type: Enhancement
>          Components: Build/Releng
>         Environment: any
>            Reporter: Mickael Istria
>            Assignee: Mickael Istria
>
> Xvfb is a minimalist in-memory X server, without VNC. For our use-case, Xvfb may be faster and may avoid some of the issues we have with Xvnc.
> A Jenkins plugin exists to use Xvfb in Jenkins: https://wiki.jenkins-ci.org/display/JENKINS/Xvfb+Plugin
> It requires Xvfb to be install in the slaves we use of IC, and the plugin installed on Jenkins.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list