Skip to content

Commit 9d16a4f

Browse files
authored
Merge pull request #91 from jts/fix_ref_fasta_index
Add reference indexing, support different primer name prefixes
2 parents cba6bdb + 492bdf2 commit 9d16a4f

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

workflow/rules/common.smk

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -245,19 +245,31 @@ rule make_amplicon_bed:
245245
params:
246246
script="primers_to_amplicons.py",
247247
offset=get_primer_offset,
248-
bed_type_opt=get_primer_bed_type_opt
248+
bed_type_opt=get_primer_bed_type_opt,
249+
primer_prefix=get_primer_prefix
249250
shell:
250-
"{params.script} --primers {input.primers} --offset {params.offset} --bed_type {params.bed_type_opt} --output {output}"
251+
"{params.script} --primers {input.primers} --offset {params.offset} --bed_type {params.bed_type_opt} --output {output} --primer_prefix {params.primer_prefix}"
251252

252253
rule make_amplicon_full_bed:
253254
input:
254255
primers=get_primer_bed
255256
output:
256257
"bed/amplicon_full.bed"
257258
params:
258-
script="primers_to_amplicons.py"
259+
script="primers_to_amplicons.py",
260+
primer_prefix=get_primer_prefix
261+
shell:
262+
"{params.script} --primers {input.primers} --bed_type full --output {output} --primer_prefix {params.primer_prefix}"
263+
264+
rule index_reference_genome:
265+
input:
266+
get_reference_genome
267+
output:
268+
expand(config["reference_genome"] + ".fai")
269+
params:
270+
exec="samtools faidx"
259271
shell:
260-
"{params.script} --primers {input.primers} --bed_type full --output {output}"
272+
"{params.exec} {input}"
261273

262274
# make a bed file for the entire reference genome as a single record
263275
# from: https://bioinformatics.stackexchange.com/questions/91/how-to-convert-fasta-to-bed

workflow/rules/defaults.smk

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ def get_primer_offset(wildcards):
4242
def get_primer_bed_type_opt(wildcards):
4343
return config.get("bed_type", "unique_amplicons")
4444

45+
# get the primer name prefix from the config.yaml file
46+
def get_primer_prefix(wildcards):
47+
return config.get("primer_prefix", "nCoV-2019")
48+
4549
def get_snp_tree_flag(wildcards=None):
4650
return config.get("build_snp_tree", True)
4751

0 commit comments

Comments
 (0)