Project

General

Profile

Building and Distributing toyExperiment

1. Make sure the build works

  • checkout the code: git clone ssh://p-art-workbook@cdcvs.fnal.gov/cvs/projects/toyExperiment
  • make sure ups and the product dependencies are available
    • on woof, source /products/setup
  • in an empty build directory:
    • source ..../toyExperiment/ups/setup_for_development -p
    • buildtool -j40

2. Create a distribution manifest and buildcfg

  • We keep the list of related products and their versions in build-framework.
    • git clone ssh://p-build-framework@cdcvs.fnal.gov/cvs/projects/build-framework
    • cd build-framework
    • git checkout for_art_v1_15
    • edit the version of toyExperiment in CMakeLists.txt
    • commit and push the change
  • in an empty working directory:
    • cmake ....../build-framework
    • make
    • cd art_externals
    • double check toyExperiment-x.yy.zz-source_MANIFEST.txt and toyExperiment-buildcfg-x.yy.zz
    • copyToSciSoft toyExperiment-x.yy.zz-source_MANIFEST.txt toyExperiment-buildcfg-x.yy.zz
    • cd ../art_suite
    • copyToSciSoft toyExperiment-vx_yy_zz.html

3. Build the distribution in Jenkins

  • The Jenkins project is build-toyExperiment under the Art tab
  • This project runs build-toyexperiment.sh in artutilscripts
    • git clone ssh://p-artutilscripts@cdcvs.fnal.gov/cvs/projects/artutilscripts
    • The script supports multiple build options and changes usually not necessary. However, if changes are necessary, make sure you commit and push them before starting the Jenkins build!
  • On buildmaster, go to https://buildmaster.fnal.gov/view/Art/job/build-toyExperiment/
    • Choose "Build with Parameters" on the left
    • set TOYVER and QUAL
    • click on the BUILD button to start the build