...
Worker Node | Account | Directory | Host | Comment |
---|---|---|---|---|
exo-build01 | exodata | /nfs/slac/g/exo/software/hudson/exo-build01 | scalnx01 |
|
exo-build02 | exodata | ~/hudson | www.exo200.org |
|
exo-build-yakut14 | exodata | /nfs/slac/g/exo/software/hudson/ | yakut14 | This agent is started on-demand via ssh |
srs-build01 | srs | /nfs/slac/g/srs/hudson/srs-build01 | scalnx01 | cronjob ok |
lsst-build01 | srs | /nfs/slac/g/srs/hudson/lsst-build01 | scalnx01 | cronjob ok. Running java at 32 bits. |
freehep-build01 | freehep | /nfs/slac/g/jas/hudson/freehep-build01 | scalnx01 |
|
lcsim-build01 | lcdprod | /nfs/slac/g/lcd/mc/prj/sw/hudson | lcddata01 |
|
fermi-build01 | glast | /nfs/slac/g/glast/ground/software/hudson/ | glastlnx20 |
|
cta-build01 | ctadata | /nfs/slac/g/agis/repo/hudson/rhel5-64/ | scalnx01 |
|
fermi-bldmac01 | glastrm | /u/gl/glastrm/jenkins/bldmac01 | bldmac01 | This is now started using launchd from ~glastrm/Library/LaunchDaemons/monitor-jenkins.plist |
fermi-bldmac02 | glastrm | /u/gl/glastrm/jenkins/bldmac02 | bldmac02 | This is now started using launchd from ~glastrm/Library/LaunchDaemons/monitor-jenkins.plist |
fermi-win04 | glast | d:\jenkins | glast-win04 | This has been configured to run as a windows service using the instructions here: |
fermi-bldlnx06 | glastrm | /u/gl/glastrm/hudson/bldlnx06 | bldlnx06 |
|
fermi-bldlnx11 | glastrm | /u/gl/glastrm/hudson/bldlnx11 | bldlnx11 |
|
fermi-bldlnx12 | glastrm | /u/gl/glastrm/hudson/bldlnx12 | bldlnx12 |
|
cdms-build-noric34 | cdmsdata | /u/dm/cdmsdata/jenkins | noric34 | |
hps-build01 | lcdprod | /nfs/slac/g/lcd/mc/prj/sw/hudson | lcddata01 |
|
Launching Jobs
Most jobs are configured to start on SCM changes by polling the repository with scheduled tasks. The SCM polling has been causing problems, so we have migrated to a different strategy: triggering the jobs remotely upon SCM changes.
SVN repositories
For the FreeHEP and the SRS repositories we have installed post-commit hooks to notify Jenkins of SCM changes. Jenkins will the internally figure out which jobs to start.
The scripts are installed in the following locations:
SRS: /nfs/slac/g/srs/subversion/hooks
Freehep: /nfs/slac/g/jas/svnbackup/svnrepositories/svn/hooks
CVS repositories
CVS hooks work differently than SVN hooks. SVN hooks are triggered at different stages of the commit, while CVS hooks are triggered for each commit. For Fermi we modified the file /nfs/slac/g/glast/ground/javacvs/CVSROOT/loginfo (has to be checked out, don't modify it on the file system directly). Each time there is a commit we execute the script /nfs/slac/g/glast/ground/jenkins/post-commit-hook which touches a file in /nfs/slac/g/glast/ground/jenkins/jobs with the name of the module that was modified. We have then installed a cronjob that runs the script /nfs/slac/g/glast/ground/jenkins/launch_jenkins_builds that is responsible to launching the corresponding jobs in Jenkins.