Job Script Example 07 ADAM
ADAM is a genomics analysis platform built for big data.[1][2]
Description
This is an example of a job script to run the Jenkins test script. All
scripts and necessary data are in the directory
/mnt/HA/opt/Examples/ADAM
Job Script
The job script is named adamtest.sh
:
#!/bin/bash
#$ -S /bin/bash
#$ -P myrsrchPrj
#$ -j y
#$ -cwd
#$ -M myname@drexel.edu
#$ -jc spark.amd
#$ -pe spark.amd 128
#$ -l vendor=amd
#$ -l exclusive
#$ -l h_rt=0:30:00
#$ -l h_vmem=4g
#$ -l m_mem_free=3g
. /etc/profile.d/modules.sh
module load shared
module load gcc
module load sge/univa
module load proteus
module load adam/0.17.0
###
### Set up environment for Spark job
###
export SPARK_CONF_DIR=${SGE_O_WORKDIR}/conf.${JOB_ID}
. ${SPARK_CONF_DIR}/spark-env.sh
./jenkins-test.proteus.sh
ADAM test script
The script which runs the ADAM test itself is named
jenkins-test.proteus.sh
:
#!/usr/bin/env bash
set -e -x
export MAVEN_OPTS="-Xmx1536m -XX:MaxPermSize=1g"
ADAM_TMP_DIR="$(mktemp -d -t "adamTestXXXXXXX")"
# Just to be paranoid.. use a directory internal to the ADAM_TMP_DIR
ADAM_TMP_DIR="$ADAM_TMP_DIR/deleteMePleaseThisIsNoLongerNeeded"
mkdir "$ADAM_TMP_DIR"
ADAM=adam-submit
echo "Fetching BAM file"
BAM=mouse_chrM.bam
READS="$BAM".reads.adam
SORTED_READS="$BAM".reads.sorted.adam
PILEUPS="$BAM".pileup
rm -rf "$BAM"
wget -q https://s3.amazonaws.com/bdgenomics-test/"$BAM"
echo "Converting BAM to ADAM read format"
rm -rf "$READS"
"$ADAM" transform "$BAM" "$READS"
echo "Converting BAM to ADAM read format with sorting"
rm -rf "$SORTED_READS"
"$ADAM" transform -sort_reads "$READS" "$SORTED_READS"
echo "Converting read file to pileup format"
rm -rf "$PILEUPS"
"$ADAM" reads2ref "$READS" "$PILEUPS"
echo "Reading reads"
"$ADAM" print "$READS" 1>/dev/null 2>/dev/null
"$ADAM" flagstat "$READS"
rm -rf "$ADAM_TMP_DIR"