HEP-FCC / heppy

[deprecated] A python analysis framework for high energy physics
Other
11 stars 32 forks source link

heppy submission tools : version is tracked #64

Closed cbernet closed 7 years ago

cbernet commented 7 years ago

This pull request enables the tracking of the version of the software used by the user in heppy jobs. When the heppy process runs, the user configuration file is parsed to find imported python modules. If, for a given python module, a git repository is found, the HEAD commit id is stored and written to a yaml file in the output directory, called software.yaml.

The only package to be always tracked is heppy.

With the heppy and heppy_batch.py, the user can specify the list of packages to be tracked, like this:

heppy OutDir analysis_cfg.py -t my_analysis1,my_analysis2

In addition, we are now making use of the dill module, which allows to pickle more complicated objects that might be used in the cfg by the user, such as lambda functions.

@hegner this pull request might fail due to missing python modules in our python. If that's the case I will contact you to see how they can be installed (no big deal, one just has to run pip)

fcc-bot commented 7 years ago

All tests succeeded.