#!/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 chr20_14085521-14085828.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.chr20_14085521-14085828.bed.somatic_indels.vcf.gz
mv ${STRELKA_RUN_DIR}/results/variants/somatic.indels.vcf.gz.tbi positive_somatic_control_1.strelka.chr20_14085521-14085828.bed.somatic_indels.vcf.gz.tbi
mv ${STRELKA_RUN_DIR}/results/variants/somatic.snvs.vcf.gz positive_somatic_control_1.strelka.chr20_14085521-14085828.bed.somatic_snvs.vcf.gz
mv ${STRELKA_RUN_DIR}/results/variants/somatic.snvs.vcf.gz.tbi positive_somatic_control_1.strelka.chr20_14085521-14085828.bed.somatic_snvs.vcf.gz.tbi
{ zcat positive_somatic_control_1.strelka.chr20_14085521-14085828.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.chr20_14085521-14085828.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