dnanexus-archive / dx-cwl

Import and run CWL workflows on DNAnexus (alpha)
Apache License 2.0
13 stars 6 forks source link

Incorporate integration test suite and link with CI #3

Open geetduggal opened 7 years ago

mr-c commented 7 years ago

FYI: Interface for a generic cwl-runner is at https://github.com/common-workflow-language/common-workflow-language/pull/278/files#diff-ee814a9c027fc9750beb075c283a973cR43

geetduggal commented 7 years ago

Great thanks! I'm setting up a really basic framework right now integrated with out internal Drone servers and will hopefully be able to integrate the generic runner with our ./dx-cwl run-workflow or something to that affect.

geetduggal commented 7 years ago

Basic Drone integration:

image

geetduggal commented 7 years ago

@mr-c, thanks for all your assistance and input so far. I am starting work on ensuring there is a CWL runner for DNAnexus and I'd like to iteratively add conformance tests to the mix. I'd like to start with a subset of basic tests for our continuous integration and add more as we flesh out features. This way we can see if a new commit to our repo breaks functionality we know has previously worked.

I am currently looking at this file: https://github.com/common-workflow-language/common-workflow-language/blob/master/v1.0/conformance_test_v1.0.yaml. Would the easiest way to move forward is to create a new file within our dx-cwl repository that we call conformance_test_v1.0_dnanexus_subset.yaml or is there another method to run a subset of CWL conformance tests? Thanks in advance

geetduggal commented 7 years ago

Also, as I generate the CWL output object document, I noticed, e.g. https://github.com/common-workflow-language/common-workflow-language/blob/master/v1.0/conformance_test_v1.0.yaml#L43 that a local file location is given. Do the conformance tests assume files are available in the local directory? I can def download them from our cloud assuming they're not too big.

mr-c commented 7 years ago

@geetduggal You are quite welcome!

You can call ./run-tests.sh with a particular test number; but it may be easier to use just your subset file. We'll be running the entire suite ourselves.

Well, we ship the conformance tests via Git so we wrote them with local references. The test data isn't very big; feel free to re-write the locations to use any identifier/URI that works for you all. Again, we'll be running them locally, so it would be nice if your cwl-runner equivalent can do the needful with local paths. Note: the line you linked to is on the output side, not the input side.