#!/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 Sig_18_tissue.recal.bam \
--normal Sig_18_Blood.recal.bam \
--referenceFasta ${REF} \
--callRegions chr21_44102678-44103072.bed.gz \
--indelCandidates custom_Sig_18_tumor_normal.manta.candidate_small_indels.vcf.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 custom_Sig_18_tumor_normal.strelka.chr21_44102678-44103072.bed.somatic_indels.vcf.gz
mv ${STRELKA_RUN_DIR}/results/variants/somatic.indels.vcf.gz.tbi custom_Sig_18_tumor_normal.strelka.chr21_44102678-44103072.bed.somatic_indels.vcf.gz.tbi
mv ${STRELKA_RUN_DIR}/results/variants/somatic.snvs.vcf.gz custom_Sig_18_tumor_normal.strelka.chr21_44102678-44103072.bed.somatic_snvs.vcf.gz
mv ${STRELKA_RUN_DIR}/results/variants/somatic.snvs.vcf.gz.tbi custom_Sig_18_tumor_normal.strelka.chr21_44102678-44103072.bed.somatic_snvs.vcf.gz.tbi
{ zcat custom_Sig_18_tumor_normal.strelka.chr21_44102678-44103072.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 custom_Sig_18_tumor_normal.strelka.chr21_44102678-44103072.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
"NFCORE_SAREK:SAREK:BAM_VARIANT_CALLING_SOMATIC_ALL:BAM_VARIANT_CALLING_SOMATIC_STRELKA:STRELKA_SOMATIC":
strelka: $( configureStrelkaSomaticWorkflow.py --version )
END_VERSIONS