Using BWA with WDL: issues and questions

dannykwellsdannykwells San FranciscoMember
edited August 2016 in Ask the WDL team

EDIT

Ok, I hadn't named them as variables yet. I'll see where I get doing that.

I'm having an issue doing an alignment using bwa with WDL.
Below is my test script. I have several questions:

  1. There appears to be an issue with the documentation from Broad about WDL. In particular, when I look here:
    https://software.broadinstitute.org/wdl/userguide/article?id=7334, at the bottom, it suggests generating an inputs file by:

java -jar cromwell.jar inputs simpleVariantDiscovery.wdl > simpleVariantDiscovery_inputs.json

But this can't be correct, right, since inputs is in wdltool?

  1. Ok, so I figure this out and run something like:
    java -jar wdltool.jar inputs myWorkflow.wdl > myWorkflow_inputs.json

2.1: Doing so, while successful, DOES NOT generate json of with keys of the format "workflow name.task name.variable name", as I was under the impression from the documentation to believe, but rather of the format "workflow name.variable name". What's the right thing to do here?

3 When I fill these in, my script is able to run in cromwell,

java -jar /Applications/cromwell-0.19.3.jar run myWorkflow.wdl myWorkflow_inputs.json

BUT, I get this error:
[E::bwa_idx_load_from_disk] fail to locate the index files
This doesn't make any sense, because I explicitly included all my index files. I've checked that I did indeed include these correctly.

Notably, my implementation of this bwa mirrors what is done here: (https://github.com/broadinstitute/wdl/blob/dce6c85a3d48905f8ff4e213686e0e0ef5b74aac/scripts/tutorials/gatk/tutorial_8017.wdl), which comes from Broad. So I have no idea what's going on.

ISSUE 3 is really the one I need help with. I just thought I would ask about the other two seeming errors/points of confusion in the online WDL docs.

Thank you!!!

MY SCRIPT THAT I WANT TO RUN

task bwaTest {
File seq1
File seq2
File hg19fa
File hg19fai
File hg19bwt
File hg19pac
File hg19ann
File hg19amb
File hg19sa

command {bwa mem -Mt 4 hg19fa seq1 seq2  > Test.sam
}


output {
        File test = "Test.sam"
}
}

workflow BWA_T {
        File seq1
        File seq2
        File hg19fa
        File hg19fai
        File hg19bwt
        File hg19pac
        File hg19ann
        File hg19amb
        File hg19sa

   call bwaTest {
        input:
        seq1 = seq1,
        seq2 = seq2,
        hg19fa = hg19fa,
        hg19fai = hg19fai,
        hg19bwt = hg19bwt,
        hg19pac = hg19pac,
        hg19ann = hg19ann,
        hg19amb = hg19amb,
        hg19sa = hg19sa
        }

}
Post edited by KateN on
Tagged:

Best Answers

Answers

  • dannykwellsdannykwells San FranciscoMember

    Hi @KateN , everything is good on this front, although another issue has arisen that I am going to ask about now. Thank you for your help.

  • @dannykwells Can you share what you did to solve the third problem?
    We've faced the same problem when running bwa in command line working but in wdl gave "[E::bwa_idx_load_from_disk] fail to locate the index files"
    Error.

    Thanks.

  • @ChrisL Thanks a lot! I've tried add indexFile (.fai) without luck.
    Turn out it will need all other indexfiles (.bwt,.sa,.pac,.amb,.ann ) as well.
    Now running thanks a lot!

Sign In or Register to comment.