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

Add ability to specify version of container when running #114

Closed
jbwexler opened this issue Apr 23, 2024 · 4 comments
Closed

Add ability to specify version of container when running #114

jbwexler opened this issue Apr 23, 2024 · 4 comments

Comments

@jbwexler
Copy link

jbwexler commented Apr 23, 2024

For example, I sometimes want to run an older version of fmriprep. Is there already an easy way to do this?

@jbwexler jbwexler changed the title Add ability to specify version of container Add ability to specify version of container when running Apr 23, 2024
@yarikoptic
Copy link
Member

you just create a dedicated versioned entry within your .datalad/config e.g.

[datalad "containers.bids-fmriprep-20.2.0"]
    cmdexec = {img_dspath}/scripts/singularity_cmd run {img} {cmd}
    image = images/bids/bids-fmriprep--20.2.0.sing

so you have all flexibility you need , just need to explicitly "specify" it in .datalad/config and it cannot be an option to datalad containers-run since it would then somehow be aware of how container images are versioned. Feel free to reopen if there is more to discuss.

@jbwexler
Copy link
Author

Ah ok thanks, I never thought to create a new entry for each version I need. In an ideal world, I could just include a flag in reproman or containers-run like container=code/containers/bids-fmriprep --version=23.1.4. But I see why that's challenging. Maybe that would require some sort of standardization of how versions are specified in the container filenames? Or what if you had something like:

[datalad "containers.bids-fmriprep]
    cmdexec = {img_dspath}/scripts/singularity_cmd run {img} {cmd}
    image = images/bids/bids-fmriprep--{version}.sing
    default_version = 20.2.0

@yarikoptic
Copy link
Member

hm, that does make sense given that we have already other substitutions there, let's reopen and transfer to where it belongs - datalad-container.

@yarikoptic
Copy link
Member

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

2 participants