This code base was written to demonstrate a reproducible workflow. The script downloads some MRI data from a shared data repository, performs some processing, then compares the output against a set of reference files to determine if the output matches.
For the purpose of this exercise, we've broken the code such that integration testing fails (as indicated by the badge on this page). Your task is to troubleshoot the workflow to find the bug and fix it. Additionally, generate a passed circleci build (which should turn the badge above from red to green). Ideally this passed build would be using your own circleci account in a github repository forked from this one, but an easier way would be to push the fix directly to the master branch in this repo. Remember we're interested equally in your approach and your process as much or more than getting to the solution. Please log your approach and your process in the google doc.
To run on one subject (which is all that circleci tests):
python run_demo_workflow.py --key 11an55u9t2TAf0EV2pHN0vOd8Ww2Gie-tHp9xGULh_dA -n 1
-
Make sure FSL is available in your environment and accessible from the command line (the neurodebian vm has this)
a) If you do not have conda in your environment (an installation of miniconda or Anaconda), the following step should download and install a Python 2 conda environment with the appropriate python packages. Otherwise follow the steps outlined in b.
curl -Ok https://raw.githubusercontent.com/agt24/workflow_challenge/master/Simple_Prep.sh
source Simple_Prep.sh
b) First install miniconda:
For Linux:
curl -o miniconda.sh http://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
For OS X:
curl -o miniconda.sh http://repo.continuum.io/miniconda/Miniconda2-latest-MacOSX-x86_64.sh
Next setup miniconda (both OS X or Linux).
chmod +x miniconda.sh
./miniconda.sh -b
conda config --add channels conda-forge
If you did not add miniconda to your environment (.bash_profile
), execute to add to your current environment:
export PATH=$HOME/miniconda2/bin:$PATH
Download the Workflow repository and create the specific versioned Python environment:
curl -OsSL https://github.com/agt24/workflow_challenge/archive/master.zip
unzip master.zip
cd workflow_challenge
conda env create -f environment.yml
source activate workflow_env
pip install https://github.com/satra/prov/archive/enh/rdf-1.x.zip