aces / cbrain

CBRAIN is a flexible Ruby on Rails framework for accessing and processing of large data on high-performance computing infrastructures.
GNU General Public License v3.0
71 stars 42 forks source link

Create new BTQ integrator option to force a full copy of input files #1281

Open prioux opened 1 year ago

prioux commented 1 year ago

By default, CBRAIN tasks create symbolic links to the CBRAIN DP cache for all the input files that the task need; that way inputs can be shared by multiple task without too much data duplication.

The symbolic links are created by the make_available() utility method in class ClusterTask.

Some stupid tasks though MUTATE their own input data, so creating a symlink doesn't work anymore, the input data of one task would perturb the input data of another one directly in the cache area.

I'd like a new option for make_available() where instead of creating a symlink, the method would make a full copy of the input data directly in the task workdir.

I'd also like this option to be invoked when a Boutiques descriptor for the new integrator contains a statement about making a full copy. This shouldn't be implemented as a module, but as an option in the custom section of the descriptor.