Skip to content

Commit ef8de96

Browse files
authored
Merge pull request #111 from martinghunt/gvcf_var_call_one_sample
Make gvcf/fasta during var call one sample pipeline
2 parents 1534cc7 + cbea795 commit ef8de96

File tree

2 files changed

+17
-2
lines changed

2 files changed

+17
-2
lines changed

python/clockwork/tests/var_call_one_sample_pipeline_test.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ def test_run(self):
5050
got_files = sorted(list(os.listdir(var_call_out)))
5151
expect_files = [
5252
"cortex.vcf",
53+
"final.gvcf",
54+
"final.gvcf.fasta",
5355
"final.vcf",
5456
"map.bam",
5557
"map.bam.bai",

python/clockwork/var_call_one_sample_pipeline.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import logging
22
import os
33

4-
from clockwork import cortex, read_map, read_trim, reference_dir, utils
4+
from clockwork import cortex, gvcf, read_map, read_trim, reference_dir, utils
55

66

77
def run(
@@ -77,7 +77,20 @@ def run(
7777
minos_dir = os.path.join(outdir, "minos")
7878
cmd = f"minos adjudicate --reads {rmdup_bam} {minos_dir} {refdir.ref_fasta} {samtools_vcf} {cortex_vcf}"
7979
utils.syscall(cmd)
80-
os.rename(os.path.join(minos_dir, "final.vcf"), os.path.join(outdir, "final.vcf"))
80+
final_vcf = os.path.join(outdir, "final.vcf")
81+
os.rename(os.path.join(minos_dir, "final.vcf"), final_vcf)
82+
83+
samtools_gvcf = os.path.join(outdir, "samtools.gvcf")
84+
cmd = f"bcftools mpileup -I --output-type u -f {refdir.ref_fasta} {rmdup_bam} | bcftools call -c -O v -o {samtools_gvcf}"
85+
utils.syscall(cmd)
86+
final_gvcf = os.path.join(outdir, "final.gvcf")
87+
gvcf.gvcf_from_minos_vcf_and_samtools_gvcf(
88+
refdir.ref_fasta, final_vcf, samtools_gvcf, final_gvcf,
89+
)
90+
if not debug:
91+
os.unlink(samtools_gvcf)
92+
gvcf.gvcf_to_fasta(final_gvcf, f"{final_gvcf}.fasta")
93+
8194
if not debug:
8295
utils.syscall(f"rm -rf {minos_dir}")
8396

0 commit comments

Comments
 (0)