File Info

Filename
.command.sh
Full Path
s3://natera-rnd-pltf-dev-nextflow-scratch-01/work/ed/fcea1fb81584c536e4ce18be19ca61/.command.sh
Size
2.2 KB
Attempt
#!/bin/bash -Ceuo pipefail
# Use local filesystem for strelka's run directory to avoid filesystem
# consistency issues with pyflow on shared/network storage. See: https://github.com/Illumina/manta/issues/5
STRELKA_RUN_DIR="/var/tmp/strelka"
mkdir -p ${STRELKA_RUN_DIR}

# Stage reference to local filesystem to avoid concurrent read failures from parallel workers on shared/network storage.
REF_DIR="/var/tmp/ref"
mkdir -p ${REF_DIR}
cp Homo_sapiens_assembly38.fasta Homo_sapiens_assembly38.fasta.fai ${REF_DIR}/
REF="${REF_DIR}/$(basename Homo_sapiens_assembly38.fasta)"

configureStrelkaSomaticWorkflow.py \
    --tumor HCC1395_tumor.recalibrated.bam \
    --normal reference-NA12878-downsampled-500k.bam \
    --referenceFasta ${REF} \
    --callRegions chr1_68991-70108.bed.gz \
     \
    --exome \
    --runDir ${STRELKA_RUN_DIR}

sed -i s/"isEmail = isLocalSmtp()"/"isEmail = False"/g ${STRELKA_RUN_DIR}/runWorkflow.py

python ${STRELKA_RUN_DIR}/runWorkflow.py -m local -j 8
mv ${STRELKA_RUN_DIR}/results/variants/somatic.indels.vcf.gz     positive_somatic_control_1.strelka.chr1_68991-70108.bed.somatic_indels.vcf.gz
mv ${STRELKA_RUN_DIR}/results/variants/somatic.indels.vcf.gz.tbi positive_somatic_control_1.strelka.chr1_68991-70108.bed.somatic_indels.vcf.gz.tbi
mv ${STRELKA_RUN_DIR}/results/variants/somatic.snvs.vcf.gz       positive_somatic_control_1.strelka.chr1_68991-70108.bed.somatic_snvs.vcf.gz
mv ${STRELKA_RUN_DIR}/results/variants/somatic.snvs.vcf.gz.tbi   positive_somatic_control_1.strelka.chr1_68991-70108.bed.somatic_snvs.vcf.gz.tbi

{ zcat positive_somatic_control_1.strelka.chr1_68991-70108.bed.somatic_snvs.vcf.gz | grep -q "^##fileformat=VCFv"; snv_status=${PIPESTATUS[1]}; } || true
if [ "$snv_status" -ne 0 ]; then
    echo "ERROR: SNV VCF file missing headers"
    exit 1
fi

{ zcat positive_somatic_control_1.strelka.chr1_68991-70108.bed.somatic_indels.vcf.gz | grep -q "^##fileformat=VCFv"; indel_status=${PIPESTATUS[1]}; } || true
if [ "$indel_status" -ne 0 ]; then
    echo "ERROR: Indel VCF file missing headers" 
    exit 1
fi

cat <<-END_VERSIONS > versions.yml
"DAQ:CONTROL_VARIANT_CALLING:CONTROL_SOMATIC_VC:BAM_VARIANT_CALLING_SOMATIC_STRELKA:STRELKA_SOMATIC":
    strelka: $( configureStrelkaSomaticWorkflow.py --version )
END_VERSIONS