Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Track CMS changes to MG5 source via git repository instead of patch files #3355

Open
Dr15Jones opened this issue Feb 1, 2023 · 5 comments
Open

Comments

@Dr15Jones
Copy link

Dr15Jones commented Feb 1, 2023

At the moment, in order to build gridpacks one must download a tarball containing the MG5 source code and then applying patches to that code. CMSSW once did something similar to handle changes needed to 3rd party code (e.g. ROOT). CMSSW has since migrated to

  • create a CMS controlled git repository for an external using the original code
  • make a branch in the repository and apply CMS specific changes to that branch

We have found using a repository to track changes has been easier to maintain and makes provenance tracking and replayability easier.

@SanghyunKo
Copy link
Collaborator

SanghyunKo commented Feb 1, 2023

FYI, the current tarball corresponds to the LTS branch (c21cb3e) of the mg5amcnlo/mg5amcnlo (which would be the one if any cloning happens to the cms-externals)

@Dr15Jones
Copy link
Author

If you are already basing the start from a GitHub repository then things are even easier. One can fork from that repository and then it is easy to update the fork when the original repository has changes.

@SanghyunKo
Copy link
Collaborator

@agrohsje @sihyunjeon will there be any immediate impact on the gridpack production if we move mg5 patches (+ plugins) from genproduction to cms-externals? i.e. does the PdmV gridpack production script clone the newest commit or specific commit or tag of the genproduction?

@sihyunjeon
Copy link
Collaborator

if the changes are made accordingly in gridpack_generation.sh, making changes for several few lines i think it should be fine.

we now use genproductions master branch but ideally this has to change, fetching the archived releases instead of using the master branch every time.

@Saptaparna
Copy link
Contributor

Instead of the wget in the code right now, one would do a git clone. Are there other changes that one needs to take into account?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants