Skip to content

Example Workflow: I2G

dxenes1 edited this page Jul 31, 2019 · 3 revisions

Images to Graphs (I2G)

This example workflow processes EM data into a graph, with neurons as nodes and synapses as edges.

Building tool containers

For this example, three containers need to be built -- i2gdetect, i2gseg and boss-access.

  1. Navigate to the i2gdetect dockerfile location and build it

    cd saber/i2g/detection/
    docker build -t aplbrain/i2gdetect .
  2. Build the i2gseg container

    cd ../neuron_segmentation
    docker build -t aplbrain/i2gseg.
  3. Build the boss-access container (note that if you have ran any of the other example workflows, this won't be necessary)

    cd ../../boss_access
    docker build -t aplbrain/boss-access .
    

Now that the tool containers are built, you can move onto the next step.

Setting parameters

Parameters for the job can be found in saber/i2g/examples/I2G_Demo/jobPublic.yml. It isn't necessary to change anything in this file if you just want to run the example.

Compiling and launching the workflow

  1. Open a bash shell in the cwl_parser container (you can find the name on your system, after running docker-compose up, using docker container list, looking for the image with the name CWL_parser)

    docker exec -it saber_cwl_parser_1 /bin/bash
    
  2. Navigate to the i2g example folder and build the SABER containers.

    cd saber/i2g/examples/I2G_Demo/
    conduit build workflow_i2g.cwl jobPublic.yaml

    This creates custom docker containers and pushes them to AWS.

  3. Build the workflow

    conduit parse workflow_i2g.cwl jobPublic.yaml

    This parses the CWL to create an Airflow dag.

  4. Now the workflow is ready to run. Go to the web interface and click the on play button near the dag.