To celebrate the release of GATK 4.0, we are giving away free credits for running the GATK4 Best Practices pipelines in FireCloud, our secure online analysis portal. It’s first come first serve, so sign up now to claim your free credits worth $250. Sponsored by Google Cloud. Learn more at https://software.broadinstitute.org/firecloud/documentation/freecredits

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.