broadinstitute / cromwell

Scientific workflow engine designed for simplicity & scalability. Trivially transition between one off use cases to massive scale production environments
http://cromwell.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
988 stars 358 forks source link

Add workflow "validate" as an API endpoint #2652

Closed seandavi closed 5 years ago

seandavi commented 6 years ago

To make cromwell a bit more self-sufficient as a "server", having access to wdltool validate as an API endpoint would avoid needing to orchestrate a client having access to wdltool for that functionality.

This issue is a companion to #2651.

geoffjentry commented 6 years ago

:+1: these were removed for non-technical reasons which are no longer an issue.

Note to implementer (here and #2651) - keep in mind that we very intentionally don't process workflows (including validation) synchronously for submission so we should be careful here as well. One thought would be to put this (and the inputs functionality in #2651) in something behind the service registry. The default impl could process the request the way one would expect, but in something like CaaS the requests could be farmed out to another microservice or something like that.

Either way, we're also doing validation in MWDA, we should make sure it's being done the same as here

seandavi commented 6 years ago

Thanks!

geoffjentry commented 6 years ago

Note that #2918 notes that the spiritual sibling of inputs would also be useful.

Either way, implementation of this should take into account our newfound multilingualism and not just handle WDL

geoffjentry commented 5 years ago

This was put in recently, aka womtool-as-a-service