diff nf/subworkflows/ncbi/target_proteins/main.nf @ 0:d9c5c5b87fec draft

planemo upload for repository https://github.com/ncbi/egapx commit 8173d01b08d9a91c9ec5f6cb50af346edc8020c4
author fubar
date Sat, 03 Aug 2024 11:16:53 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nf/subworkflows/ncbi/target_proteins/main.nf	Sat Aug 03 11:16:53 2024 +0000
@@ -0,0 +1,37 @@
+#!/usr/bin/env nextflow
+// main nextflow script for EGAPx execution
+// route data to subworkflows
+
+nextflow.enable.dsl=2
+
+include { miniprot } from './miniprot/main'
+include { align_filter_sa } from './align_filter_sa/main'
+include { best_aligned_prot } from './best_aligned_prot/main'
+include { paf2asn } from './paf2asn/main'
+include { run_align_sort} from '../default/align_sort_sa/main'
+
+params.intermediate = false
+
+
+workflow target_proteins_plane {
+    take:
+        unpacked_genome_fasta
+        genome_asn
+        gencoll_asn
+        unpacked_proteins_fasta
+        proteins_asn
+        max_intron
+        task_params     // task parameters for every task
+    main:
+        // Protein alignments
+        miniprot(unpacked_genome_fasta, unpacked_proteins_fasta, max_intron, task_params.get('miniprot', [:]))
+        def miniprot_file = miniprot.out.miniprot_file
+        paf2asn(genome_asn, proteins_asn, miniprot_file, task_params.get('paf2asn', [:]))
+        def converted_asn = paf2asn.out.asn_file
+        best_aligned_prot(genome_asn, proteins_asn, converted_asn.collect(), gencoll_asn, task_params.get('best_aligned_prot', [:]))
+        align_filter_sa(genome_asn, proteins_asn, best_aligned_prot.out.asn_file, task_params.get('align_filter_sa', [:]))
+        run_align_sort(genome_asn, proteins_asn,align_filter_sa.out.filtered_file,
+            "-k subject,subject_start,-subject_end,subject_strand,query,query_start,-query_end,query_strand,-num_ident,gap_count" )
+    emit:
+        protein_alignments = run_align_sort.out
+}