New developments in Continuous Integration (CI)

Since the first article appeared in the August 2016 edition of FIFE Notes, the Continuous Integration (CI) project has been implementing new features and on-boarding new experiments and collaborations. DUNE, GlideinWMS, MINERvA and GENIE are ready to try it out. NOvA is using CI extensively for their production releases. Alex Himmel, the NOvA production coordinator, discussed their experience at the October CS liaison meeting. “Continuous integration has been a major benefit to NOvA — it allows us to catch issues one-by-one as they happen instead of all at once during an official production campaign. In just the last few months it has already saved us from many headaches,” Himmel said. 

CI Web Application Examples

CI Web Application Examples

In the last few months, the Continuous Integration (CI) project implemented and deployed new features and improvements. These include a new graphical interface for users and highly configurable email reports about the status of a CI build. CI now supports a variety of  statuses. For example, the “warning” status alerts users that the built code is running but that some investigation is required. We are also providing detailed instructions and documentation for each experiment or collaboration that has been on-boarded.

Many other features and improvements are under development, including:

  1. An automatic procedure to generate reference files for the CI tests.
  2. The ability to run CI tests on the grid and make final plots available via CI WebUI. This feature is useful for CPU intensive tests such as physics validation. In order to improve monitoring for CI test grid jobs, CI is being extended to interface POMS. The following plots show the uBooNE calorimeter validation test using this new feature.

CI has been shown to be a valuable tool to build and test experiments’ software stack.

dedxrr_histdir_trackkalmanhit

Muon range results from uBooNE calorimeter validation test

–Vito Di Benedetto and Anna Mazzacane