Require for MC productions that decoding key is committed
As discussed here https://mattermost.web.cern.ch/lhcb/pl/bt5ghjjjaiyq7fzktu5adfqaxo by @roneil :
# WARNING: Created new key 2e686cfe - to publish the corresponding decoding table, please do `git -C /pool/condor/dir_2560798/dfUNDm9xdj2n0YTDjqK9jVWpABFKDmABFKDm7t1QDmABFKDmRAbWim/DIRAC_giysGcpilot/712480259/lhcb-metainfo/.git push origin key-2e686cfe`
# WARNING: Created new key 693c89ea - to publish the corresponding decoding table, please do `git -C /pool/condor/dir_2560798/dfUNDm9xdj2n0YTDjqK9jVWpABFKDmABFKDm7t1QDmABFKDmRAbWim/DIRAC_giysGcpilot/712480259/lhcb-metainfo/.git push origin key-693c89ea`
it looks like the decoding keys were not pushed to the gitlab repo.
There is the option to flag this up in productions when following the recipe described here:
We can add the following lines
from PyConf.application import metainfo_repos, retrieve_encoding_dictionary
options.write_decoding_keys_to_git = False
metainfo_repos.global_bind(repos=[]) # only use repos on cvmfs
retrieve_encoding_dictionary.global_bind(require_key_present=True) # require key is in repo
to the module which defines the settings https://gitlab.cern.ch/lhcb/Moore/-/blob/master/Hlt/Moore/python/Moore/production.py#L48 .
However, as the module is also used in nightly tests, we have to protect this setting by a command line argument only set in production.