LHCb high-level trigger applications consist of components that run reconstruction algorithms and perform physics object selections, scaling from hundreds to tens of thousands depending on the selection stage. The configuration of the components, the data flow and the control flow are implemented in Python . The resulting application configuration is condensed in the basic form of a list of components with their properties and values. It is often required to change configuration without deploying new binaries. Moreover, it is essential to be able to reproduce a given production configuration and to be able to query it after it has been used. For these reasons, the basic form of the trigger configuration is captured and stored in a database via Git . This contribution describes a new infrastructure around generating and validating the configurations. The process is based on GitLab pipelines that are triggered by user defined specifications and run several steps ranging from basic checks to performance validation using dedicated runners. Upon merging, the configuration database is deployed on CVMFS. The process as implemented ensures consistency and reproducibility for the generated trigger configurations.
Grazette et al. (Tue,) studied this question.