## This script contains all commands executed in the PROJECT w7qbuc and can be run again using the ASAP_run docker (https://hub.docker.com/layers/fabdavid/asap_run) echo '*******************Reproducing analysis of PROJECT w7qbuc / ASAP57**********************' echo '***************************************************************************************' ## CONFIGURATION (edit below to match your machine; lines until the separator) export ASAP_PROJECTS_DIR=/asap_projects ## change this to write analysis results there (there will be subdirectory for each project key). export LOOM_DIR=$ASAP_PROJECTS_DIR/loom_files export ASAP_DATA_DB_HOST=localhost; export ASAP_DATA_DB_PORT=5432 export PSQL_DIR=/usr/pgsql-10/bin ## ========================================================= export PROJECT_DIR=$ASAP_PROJECTS_DIR/w7qbuc ## Pull Docker images (must run before any docker run in this script) docker pull fabdavid/asap_run:v5 ## Host LOOM staging directory (inside Docker volume) docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $LOOM_DIR; chmod 777 $LOOM_DIR" echo 'This project is PUBLIC => Nothing to do' ## Local PostgreSQL: create ASAP data database and load dump if missing if ! psql -lqt | cut -d \| -f 1 | grep -qw asap_data_v5; then echo 'Create database asap_data_v5'; echo '$PSQL_DIR/createdb -p $ASAP_DATA_DB_PORT asap_data_v5'; $PSQL_DIR/createdb -p $ASAP_DATA_DB_PORT asap_data_v5; echo 'wget -qO - https://asap.epfl.ch/dumps/asap_data_v5.sql.gz | gunzip | grep -v \'AS integer\' | $PSQL_DIR/psql -p $ASAP_DATA_DB_PORT asap_data_v5'; wget -qO - https://asap.epfl.ch/dumps/asap_data_v5.sql.gz | gunzip | grep -v 'AS integer' | $PSQL_DIR/psql -p $ASAP_DATA_DB_PORT asap_data_v5; fi ## Project directory on the shared volume docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR" ## Step output directories (one folder per pipeline step that has runs) docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/parsing/ && mkdir -p $PROJECT_DIR/normalization/ && mkdir -p $PROJECT_DIR/markers/ && mkdir -p $PROJECT_DIR/marker_enrich/" ## Parsed LOOM file (public: wget; private: place file then symlink as below) echo 'Loading parsed Loom file...' docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "wget -qO $PROJECT_DIR/parsing/output.loom 'https://asap.epfl.ch/projects/w7qbuc/get_file?filename=parsing/output.loom'" ## Re-execute each recorded run (parsing step is skipped; LOOM is already in place) ## ---------------------------------------------------------------- ## Run 73663 Normalization (Normalization #1 asap_seurat) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/normalization/73663/" ## Running Normalization [73663] [Normalization #1 asap_seurat] (input_matrix:parsing) echo '-> Running Normalization [73663] [Normalization #1 asap_seurat] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_73663 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T Normalization -loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/normalization/73663/output.json -oAnnot /layers/norm_1_asap_seurat -scaleFactor 10000 1> /data/asap2/users/1/w7qbuc/normalization/73663/exec.out 2> /data/asap2/users/1/w7qbuc/normalization/73663/exec.err'" ## ---------------------------------------------------------------- ## Run 171503 Find markers (Find markers #1 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/171503/" ## Running Find markers [171503] [Find markers #1 asap_markers] () echo '-> Running Find markers [171503] [Find markers #1 asap_markers] ()' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_171503 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/markers/171503 --iAnnot /col_attrs/annotation --id 469922 1> /data/asap2/users/1/w7qbuc/markers/171503/exec.out 2> /data/asap2/users/1/w7qbuc/markers/171503/exec.err'" ## ---------------------------------------------------------------- ## Run 171504 Marker enrichment (Marker enrichment #2 asap_marker_enrichment) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/marker_enrich/171504/" ## Running Marker enrichment [171504] [Marker enrichment #2 asap_marker_enrichment] () echo '-> Running Marker enrichment [171504] [Marker enrichment #2 asap_marker_enrichment] ()' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_171504 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T MarkerEnrichment -i /data/asap2/users/1/w7qbuc/markers/171503 -o /data/asap2/users/1/w7qbuc/markers/171504 --genesets 671,672,673,2371,3138 -h $ASAP_DATA_DB_HOST:$ASAP_DATA_DB_PORT/asap_data_v5 1> /data/asap2/users/1/w7qbuc/markers/171504/exec.out 2> /data/asap2/users/1/w7qbuc/markers/171504/exec.err'" ## ---------------------------------------------------------------- ## Run 454022 Find markers (Find markers #2 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/454022/" ## Running Find markers [454022] [Find markers #2 asap_markers] (input_matrix:parsing) echo '-> Running Find markers [454022] [Find markers #2 asap_markers] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_454022 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/markers/454022 --iAnnot /col_attrs/annotation --id 469922 --is_count_table true 1> /data/asap2/users/1/w7qbuc/markers/454022/exec.out 2> /data/asap2/users/1/w7qbuc/markers/454022/exec.err'" ## ---------------------------------------------------------------- ## Run 561410 Find markers (Find markers #3 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/561410/" ## Running Find markers [561410] [Find markers #3 asap_markers] (input_matrix:parsing) echo '-> Running Find markers [561410] [Find markers #3 asap_markers] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_561410 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/markers/561410 --iAnnot /col_attrs/Clustering_Annotation --id 469913 --is_count_table true 1> /data/asap2/users/1/w7qbuc/markers/561410/exec.out 2> /data/asap2/users/1/w7qbuc/markers/561410/exec.err'" ## ---------------------------------------------------------------- ## Run 800652 Find markers (Find markers #4 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/800652/" ## Running Find markers [800652] [Find markers #4 asap_markers] (input_matrix:parsing) echo '-> Running Find markers [800652] [Find markers #4 asap_markers] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_800652 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/markers/800652 --iAnnot /col_attrs/R_annotation --id 469943 --is_count_table true 1> /data/asap2/users/1/w7qbuc/markers/800652/exec.out 2> /data/asap2/users/1/w7qbuc/markers/800652/exec.err'" ## ---------------------------------------------------------------- ## Run 800658 Find markers (Find markers #5 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/800658/" ## Running Find markers [800658] [Find markers #5 asap_markers] (input_matrix:parsing) echo '-> Running Find markers [800658] [Find markers #5 asap_markers] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_800658 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/markers/800658 --iAnnot /col_attrs/R_annotation__ontology_id --id 469927 --is_count_table true 1> /data/asap2/users/1/w7qbuc/markers/800658/exec.out 2> /data/asap2/users/1/w7qbuc/markers/800658/exec.err'" ## ---------------------------------------------------------------- ## Run 800659 Find markers (Find markers #6 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/800659/" ## Running Find markers [800659] [Find markers #6 asap_markers] (input_matrix:parsing) echo '-> Running Find markers [800659] [Find markers #6 asap_markers] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_dev_800659 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom /data/asap2/users/1/w7qbuc/parsing/output.loom -o /data/asap2/users/1/w7qbuc/markers/800659 --iAnnot /col_attrs/Clustering_Leiden_resolution_0.4__default__398_ --id 469897 --is_count_table true 1> /data/asap2/users/1/w7qbuc/markers/800659/exec.out 2> /data/asap2/users/1/w7qbuc/markers/800659/exec.err'" ## ---------------------------------------------------------------- ## Run 832868 Find markers (Find markers #7 asap_markers) ## ---------------------------------------------------------------- ## Ensure output directory exists docker run --entrypoint '/bin/sh' --rm -v $ASAP_PROJECTS_DIR:$ASAP_PROJECTS_DIR fabdavid/asap_run:v5 -c "mkdir -p $PROJECT_DIR/markers/832868/" ## Running Find markers [832868] [Find markers #7 asap_markers] (input_matrix:parsing) echo '-> Running Find markers [832868] [Find markers #7 asap_markers] (input_matrix:parsing)' ## Command docker run -v /data/asap:/data/asap -v /mnt/asap_data/ensembl:/mnt/asap_data/ensembl:ro -e ENSEMBL_DATA_DIR=/mnt/asap_data/ensembl --name asap_832868 --net=host -e HOST_USER_ID=$(id -u) -e HOST_USER_GID=$(id -g) --entrypoint '/bin/sh' --rm fabdavid/asap_run:v5 -c "sh -c 'java -jar /srv/ASAP.jar -T FindMarkers --loom $PROJECT_DIR/parsing/output.loom -o $PROJECT_DIR/markers/832868 --iAnnot /col_attrs/annotation --id 469922 --is_count_table true 1> $PROJECT_DIR/markers/832868/exec.out 2> $PROJECT_DIR/markers/832868/exec.err'"