This pull request updates the omni dependency and adds a --skip_synth flag to disable Synth Distortion Correction, which only applies distortion correction from topup. In addition, it adds configuration file support and includes a basic continuous integration setup with circleci (though some parameters + config will be need on the compute end of things to get it truly working).
Config files
The config system uses the toml format. Arguments can be specified in the config file, as shown in the following example:
Will use ncpus=8 rather than ncpus=1 as in the config file.
CI with circleci
This pull request contains a docker compose config for setting up a self-hosted runner for the circleci service. It can be run by copying over env file to the project root directory, and running docker compose up -d. This will register a dockerized runner with the circleci service (you will need to register a CIRCLECI_API_TOKEN for this to work).
The self-hosted runner passes the docker.sock socket from the host, so that docker images inside the runner can be used. When the workflow is triggered the pipeline docker image can use NHP_DATA_MOUNT and NHP_WRITABLE_MOUNT to read and write data to the host.
This pull request updates the
omni
dependency and adds a--skip_synth
flag to disable Synth Distortion Correction, which only applies distortion correction from topup. In addition, it adds configuration file support and includes a basic continuous integration setup with circleci (though some parameters + config will be need on the compute end of things to get it truly working).Config files
The config system uses the toml format. Arguments can be specified in the config file, as shown in the following example:
which can be passed into the program as:
this is functionally equivalent to:
Arguments on the command-line take precedence over any arguments defined in the file, for example:
Will use
ncpus=8
rather thanncpus=1
as in the config file.CI with circleci
This pull request contains a docker compose config for setting up a self-hosted runner for the circleci service. It can be run by copying over
env
file to the project root directory, and runningdocker compose up -d
. This will register a dockerized runner with the circleci service (you will need to register aCIRCLECI_API_TOKEN
for this to work).The self-hosted runner passes the
docker.sock
socket from the host, so that docker images inside the runner can be used. When the workflow is triggered the pipeline docker image can useNHP_DATA_MOUNT
andNHP_WRITABLE_MOUNT
to read and write data to the host.Host Machine ------------------------------------> circleci runner ------------------------------------> nhp-abcd-bids-pipeline Docker Docker (mounting host
docker.sock
)