aboutsummaryrefslogtreecommitdiff
path: root/test-tnpair.nix
diff options
context:
space:
mode:
authorJustin Bedo <cu@cua0.org>2019-07-04 14:26:52 +1000
committerJustin Bedo <cu@cua0.org>2019-07-08 15:06:58 +1000
commitbe187bfeb074e5c2b65f25f3dcdb82a98b15570d (patch)
tree692f706f37a13f3a4026d5a560a6973c09065bfd /test-tnpair.nix
parente7a6aef11516c1330ae21610b4e14321b137fd04 (diff)
linkOutputs: refactor output linking expression
The existing linkDrv only has a singular output, making it difficult to separate the various types of output. The new functionality replaces the old with attribute sets defining the outputs. The old linkDrv is deprecated.
Diffstat (limited to 'test-tnpair.nix')
-rw-r--r--test-tnpair.nix63
1 files changed, 31 insertions, 32 deletions
diff --git a/test-tnpair.nix b/test-tnpair.nix
index f90e3a9..afbdf68 100644
--- a/test-tnpair.nix
+++ b/test-tnpair.nix
@@ -54,37 +54,36 @@ let
plot = cnvkit.scatterPlot {} cnvs;
};
- testNaming = linkDrv [
- (ln (facets.callCNV {} {vcf = tnpairResult.platypusVars; bams = with tnpairResult.alignments; [ normal tumour ];}) "facets")
- (ln cnvkitResults.cnvs "cnvkit")
- (ln cnvkitResults.plot "cnvkit.pdf")
- (ln tnpairResult.octopusVars "octopus.vcf")
- (ln tnpairResult.octopusSomatic "octopus-somatic.vcf")
- (ln tnpairResult.variants "strelka")
- (ln tnpairResult.glvariants "strelka-gl")
- (ln tnpairResult.variants.indels "strelka.indels.vcf")
- (ln tnpairResult.variants.snvs "strelka.snvs.vcf")
- (ln tnpairResult.glvariants.variants "strelka.gl.vcf")
- (ln (bowtie.align {inherit ref;} tnpair.normal.files) "alignments/bowtie-normal.bam")
- (ln (bwa.mem {inherit ref;} tnpair.normal.files) "alignments/bwa-mem.bam")
- (ln (bwa.mem2 {inherit ref;} tnpair.normal.files) "alignments/bwa-mem2.bam")
- (ln (minimap2.align {inherit ref; preset = "sr"; } tnpair.normal.files) "alignments/minimap2-normal.bam")
- (ln (snap.align {inherit ref; } tnpair.normal.files) "alignments/snap-normal.bam")
- (ln (gridss.callVariants {} (with tnpairResult.alignments; [normal tumour])) "gridss")
- (ln (gridss.call (with tnpairResult.alignments; [normal tumour])) "gridss2")
- (ln (gridss.callAndAssemble (with tnpairResult.alignments; [normal tumour])) "gridss3")
- (ln (samtools.merge {} tnpairResult.shards) "alignments/merged-shards.bam")
- (ln (samtools.merge {} [tnpairResult.alignments.tumour tnpairResult.alignments.normal]) "alignments/merged.bam")
- (ln (samtools.merge {} [(nameSort tnpairResult.alignments.tumour) (nameSort tnpairResult.alignments.normal)]) "alignments/merged-namesorted.bam")
- (ln (samtools.view { outfmt = types.toCram; } (tnpairResult.alignments.tumour)) "alignments/${tnpair.tumour.name}.cram")
- #(ln (samtools.view { outfmt = types.toCram; } (tnpairResult.alignments.normal)) "alignments/${tnpair.normal.name}.cram")
- (ln (flagstat tnpairResult.alignments.tumour) "alignments/${tnpair.tumour.name}.flagstat")
- #(ln (flagstat tnpairResult.alignments.normal) "alignments/${tnpair.normal.name}.flagstat")
- (ln (check-fastqc tnpair.tumour.files.input1) "fastqc/${tnpair.tumour.name}.1")
- #(ln (check-fastqc tnpair.normal.files.input1) "fastqc/${tnpair.normal.name}.1")
- #(ln (check-fastqc tnpair.normal.files.input2) "fastqc/${tnpair.normal.name}.2")
- #(ln (check-fastqc tnpair.tumour.files.input2) "fastqc/${tnpair.tumour.name}.2")
- (ln (check-fastp tnpair.tumour.files) "fastp/${tnpair.tumour.name}")
- ];
+ alignments = {
+ "bowtie-normal.bam" = bowtie.align {inherit ref;} tnpair.normal.files;
+ "bwa-mem.bam" = bwa.mem {inherit ref;} tnpair.normal.files;
+ "bwa-mem2.bam" = bwa.mem2 {inherit ref;} tnpair.normal.files;
+ "minimap2-normal.bam" = minimap2.align {inherit ref; preset = "sr"; } tnpair.normal.files;
+ "snap-normal.bam" = snap.align {inherit ref; } tnpair.normal.files;
+ "${tnpair.tumour.name}.flagstat" = flagstat tnpairResult.alignments.tumour;
+ };
+
+ testNaming = linkOutputs {
+ facets = facets.callCNV {} {vcf = tnpairResult.platypusVars; bams = with tnpairResult.alignments; [ normal tumour ];};
+ cnvkit = cnvkitResults.cnvs;
+ "cnvkit.pdf" = cnvkitResults.plot;
+ "octopus.vcf" = tnpairResult.octopusVars;
+ "octopus-somatic.vcf" = tnpairResult.octopusSomatic;
+ strelka = tnpairResult.variants;
+ strelka-gl = tnpairResult.glvariants;
+ strelka-indels = tnpairResult.variants.indels;
+ "strelka.snvs.vcf" = tnpairResult.variants.snvs;
+ "strelka.gl.vcf" = tnpairResult.glvariants.variants;
+ gridss = gridss.callVariants {} (with tnpairResult.alignments; [normal tumour]);
+ gridss2 = gridss.call (with tnpairResult.alignments; [normal tumour]);
+ gridss3 = gridss.callAndAssemble (with tnpairResult.alignments; [normal tumour]);
+ "merged-shards.bam" = samtools.merge {} tnpairResult.shards;
+ "merged.bam" = samtools.merge {} [tnpairResult.alignments.tumour tnpairResult.alignments.normal];
+ "merged-namesorted.bam" = samtools.merge {} [(nameSort tnpairResult.alignments.tumour) (nameSort tnpairResult.alignments.normal)];
+ "${tnpair.tumour.name}.cram" = samtools.view { outfmt = types.toCram; } (tnpairResult.alignments.tumour);
+ "${tnpair.tumour.name}.fastqc.1" = check-fastqc tnpair.tumour.files.input1;
+ "${tnpair.tumour.name}.fastp" = check-fastp tnpair.tumour.files;
+ inherit alignments;
+ };
in testNaming