Running an older version of C-PAC (V1.3.0)

Summary of what happened:

Hello All, I am trying to replicate some analysis done on the HBN data with C-PAC, I have the pipeline configuration file for that analysis, which states that it was running on C-PAC V1.3.0. I am currently using the latest container with C-PAC V1.8.6 using singularity. Unfortunately, the pipeline exits and throws an error. I have also tried running my container with the default pipeline of C-PAC V1.3.0, which also exited with a different error. I can provide you with the specific configuration files and errors if necessary.
but more importantly, Is there a way to perhaps pull an old container that has C-PAC version 1.3.0 so that I can use it for replication?
Thanks in Advance!

Command used:

singularity run -B /home/ammar/cpac_inputs:/bids_dataset -B /home/ammar/cpac_outputs:/outputs -B /tmp:/tmp c-pac-latest.simg /bids_dataset /outputs participant --pipeline-file /home/ammar/cpac_inputs/pipeline_config.yml

and similarly with the other config file:

singularity run -B /home/ammar/cpac_inputs:/bids_dataset -B /home/ammar/cpac_outputs:/outputs -B /tmp:/tmp c-pac-latest.simg /bids_dataset /outputs participant --pipeline-file /home/ammar/cpac_inputs/pipeline_config_cpac_default_1.3.0.yml

Version:

C-PAC Version 1.8.6
Singularity Version 2.6.1-dist

Environment : Singularity


C-PAC Version 1.3.0 is actually the oldest version for which we have a published container. You can pull a Singularity version like

singularity pull docker://fcpindi/c-pac:release-v1.3.0

C-PAC’s pipeline configuration file schema changes (usually in small ways) with each release, including a complete overhaul in version 1.8.0, so if you’re looking to replicate a prior analysis, using the same version is probably the way to go.


If you do want to upgrade a configuration to a recent version of C-PAC, there is a page in the documentation that articulates the mappings from a C-PAC 1.7.2 pipeline configuration to a C-PAC 1.8.0 configuration.

In the newer versions, you don’t need to configure options you aren’t using. You can start a pipeline configuration with

FROM: blank

to set every option to default to be inactive, then fill out just what you want to be configured.

Unless you’re adding options that didn’t exist in 1.3.0 to your configuration, most of the keys should be the same (or nearly the same) in 1.7.2 as in 1.3.0, so the update-mappings should mostly be applicable (the changes from version to version are typically additive).