Skip to content

Instantly share code, notes, and snippets.

@indraniel
Last active April 18, 2017 21:22
Show Gist options
  • Select an option

  • Save indraniel/82dea42a8234d10751ec48f35055339f to your computer and use it in GitHub Desktop.

Select an option

Save indraniel/82dea42a8234d10751ec48f35055339f to your computer and use it in GitHub Desktop.
#!/bin/bash
BASE=/gscmnt/gc2802/halllab/idas/laboratory/yaps2-cadd-vep-test
VIRTUALENV=${BASE}/test-venv
source ${VIRTUALENV}/bin/activate
# see confluence
export BMETRICA_DSN="mysql://USER:PASSWORD@hostname:port/database"
function log {
local timestamp=$(date +"%Y-%m-%d %T")
echo "---> [ ${timestamp} ] $@" >&2
}
function create_dir {
local dir=$1
if [ ! -d "$dir" ]; then
log "Creating directory: $dir"
mkdir -p "$dir"
fi
}
function lsf_cmd {
local prj_name=$1
local workspace=$2
local input_vcfs=$3
local database=$4
local master_lsf_log=$5
local yaps_cmd="yaps2 postvqsr "
yaps_cmd+="--job-db=${database} "
yaps_cmd+="--workspace=${workspace} "
yaps_cmd+="--input-vcfs=${input_vcfs} "
yaps_cmd+="--project-name=${prj_name} "
yaps_cmd+="--drm=lsf "
yaps_cmd+="--task-flush "
yaps_cmd+="--queue='ccdg' "
# yaps_cmd+="--skip-confirm "
# yaps_cmd+="--docker"
local bsub_cmd="bsub "
bsub_cmd+="-J ${prj_name}-master "
bsub_cmd+="-u [email protected] -N "
bsub_cmd+="-q long "
bsub_cmd+="-M 8000000 "
bsub_cmd+="-R 'select[mem>8000 && ncpus>8]' "
bsub_cmd+="-oo ${master_lsf_log} "
bsub_cmd+="'${yaps_cmd}'"
echo ${bsub_cmd}
}
function cleanall {
local workspace=$1
local database=$2
if [ -e ${workspace} ]; then
log "Nuking out old '${workspace}' directory"
rm -rf ${workspace}
fi
log "Nuking out the old database: '${database}'"
rm -rfv ${database}
}
function main {
local prj_name="test-vep-cadd"
local workspace=${BASE}/data/derived/post-vqsr
local database=/gscuser/idas/yaps2/test-vep-cadd.db
local input_vcfs=${BASE}/data/derived/1-create-test-postvqsr-input-data-file/test-input.dat
local master_lsf_log="${BASE}/logs/${prj_name}.%J.log"
# cleanall ${workspace} ${database}
create_dir ${workspace}
local cmd=$(lsf_cmd ${prj_name} ${workspace} ${input_vcfs} ${database} ${master_lsf_log})
log "${cmd}"
eval "${cmd}"
}
main ;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment