Skip to content
Snippets Groups Projects
Commit 10524ce8 authored by Peter van 't Hof's avatar Peter van 't Hof
Browse files

Enforce absolute paths for input files

parent 5bd17150
No related branches found
No related tags found
No related merge requests found
...@@ -24,6 +24,7 @@ import nl.lumc.sasc.biopet.extensions.picard.{ AddOrReplaceReadGroups, MarkDupli ...@@ -24,6 +24,7 @@ import nl.lumc.sasc.biopet.extensions.picard.{ AddOrReplaceReadGroups, MarkDupli
import nl.lumc.sasc.biopet.pipelines.bammetrics.BamMetrics import nl.lumc.sasc.biopet.pipelines.bammetrics.BamMetrics
import nl.lumc.sasc.biopet.pipelines.mapping.Mapping import nl.lumc.sasc.biopet.pipelines.mapping.Mapping
import nl.lumc.sasc.biopet.pipelines.toucan.Toucan import nl.lumc.sasc.biopet.pipelines.toucan.Toucan
import nl.lumc.sasc.biopet.utils.Logging
import scala.collection.JavaConversions._ import scala.collection.JavaConversions._
...@@ -119,9 +120,17 @@ trait ShivaTrait extends MultiSampleQScript with Reference { ...@@ -119,9 +120,17 @@ trait ShivaTrait extends MultiSampleQScript with Reference {
(Some(mapping), Some(mapping.finalBamFile), preProcess(mapping.finalBamFile)) (Some(mapping), Some(mapping.finalBamFile), preProcess(mapping.finalBamFile))
} }
lazy val inputR1: Option[File] = config("R1") def fileMustBeAbsulute(file: Option[File]): Option[File] = {
lazy val inputR2: Option[File] = config("R2") if (file.forall(_.isAbsolute)) file
lazy val inputBam: Option[File] = if (inputR1.isEmpty) config("bam") else None else {
Logging.addError(s"$file for $sampleId / $libId should be a absolute file path")
file.map(_.getAbsoluteFile)
}
}
lazy val inputR1: Option[File] = fileMustBeAbsulute(config("R1"))
lazy val inputR2: Option[File] = fileMustBeAbsulute(config("R2"))
lazy val inputBam: Option[File] = fileMustBeAbsulute(if (inputR1.isEmpty) config("bam") else None)
lazy val (mapping, bamFile, preProcessBam): (Option[Mapping], Option[File], Option[File]) = lazy val (mapping, bamFile, preProcessBam): (Option[Mapping], Option[File], Option[File]) =
(inputR1.isDefined, inputBam.isDefined) match { (inputR1.isDefined, inputBam.isDefined) match {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment