-
Notifications
You must be signed in to change notification settings - Fork 203
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
add (experimental) support for specifying easyconfig files via "easystack" file #3479
add (experimental) support for specifying easyconfig files via "easystack" file #3479
Conversation
@deniskristak (very) quick feedback:
Maybe we also need a better name than "specsfile", which sounds very generic... Any suggestions on that? cc @casparvl |
Nice start Denis! Just for fun, I tried to run it on the example yaml file I provided in my original issue and got
looks like what you intended :)
Hm, good one. Everything sounds unclear, or too long to me. Buildspec? Buildspecfile? Buildlist? Buildlistspec? The problem with the first two is that it doesn't reflect that this concerns (typically) building more than one software. "Buildlist" is again quite generic, and doesn't cover the level of detail with which you can specify build behaviour (once we allow e.g. specifying command line arguments per item in the yaml file). "Buildlistspec" covers quite well what the yaml file is, but may be a bit long. And I find all of my suggestions ugly, so I'm open to other suggestions too ;-) I've checked a bit the code. And I have two major points (1) I see that you're currently calling search_easyconfigs. I'm not sure if that is a wise road to go down: what if multiple EasyConfigs are found? Or none? How is EasyBuild supposed to continue from that? In my view, the specfile should specify unambiguously which EasyConfig is intended. I.e. to me
Should quite litterally do the equivalent of
since the specfile really specifies all (except the Currently, it does more of a
Grab the resulting full path (if a unique one is returned) and pass that on to eb.main's Why not just parse the spec file to compose a new (2) The way it is currently set up, a call to What I would do is probably: parse the yaml file, and compose new calls to eb.main from that (with appropriate arguments). That keeps the additional specfile option simpler (the only thing it needs to do is extract an EasyConfig name and related options, and create a loop over that parsed list that simply calls main again). @boegel what do you think? |
Feature/specsfile private
cosmetic changes
Added support for easybuild-ing from provided specsfile. Currently works with yaml, can be extended to json etc.
Original task: #3468