Skip to content

athenaHLT: add support for CA modules

Frank Winklmeier requested to merge fwinkl/athena:hltca2 into 23.0

Add support for running from ComponentAccumulator modules to athenaHLT. The overall idea is as follows:

  1. A new TrigPSCPythonCASetup module is added to bootstrap the python configuration when a CA module is given on the command line (this is determined simply by the lack of the .py filename extension).
  2. The pre-command (if any) is executed and flags the follow the CA module are set
  3. After setting up the basic infrastructure services, TrigPSCPythonCASetup then executes and merges the user-supplied CA.
  4. The post-command is executed
  5. The CA is dumped into a .pkl file and converted to .json.
  6. athenaHLT re-launches itself from the produced JSON file (equivalent to --dump-config-reload, the code to do this has been re-factored and is now used both for CA and legacy job options). Unlike for legacy job options, this (dump-and-reload) is the only supported mode of running.

Example:

athenaHLT.py --file=FILE AthExHelloWorld.HelloWorldConfig.HelloWorldCfg Trigger.foo='bar'

Relates to ATR-26800. cc @rbielski @tbold @wiedenma @mark

Edited by Frank Winklmeier

Merge request reports